반응형
안녕하세요 저는 다음과 같은 테이블이 있습니다.
테이블 항목 :
아이디 | total_comments
_____________________
1 | 0
2 | 0
3 | 0
4 | 0
테이블 설명 :
아이디 | eid | 댓글
_____________________
1 | 1 | comment sdfd
2 | 1 | testing testing
3 | 1 | comment text
4 | 2 | dummy comment
5 | 2 | sample comment
6 | 1 | fg fgh dfh
내가 쓰는 쿼리 :
UPDATE entry
SET total_comments = total_comments + 1
WHERE id IN ( SELECT eid
FROM comments
WHERE id IN (1,2,3,4,5,6))
내가 얻은 결과 :
테이블 항목 :
아이디 | total_comments
_____________________
1 | 1
2 | 1
3 | 0
4 | 0
예상 결과 :
테이블 항목 :
아이디 | total_comments
_____________________
1 | 4
2 | 2
3 | 0
4 | 0
도움을 주시면 감사하겠습니다.
해결 방법
사용하다:
UPDATE entry
SET total_comments = (SELECT COUNT(*)
FROM COMMENTS c
WHERE c.eid = id
GROUP BY c.eid)
WHERE id IN ( SELECT eid
FROM comments
WHERE id IN (1,2,3,4,5,6))
참조 페이지 https://stackoverflow.com/questions/2993110
반응형
'MySql' 카테고리의 다른 글
MySQL 오류 mysqli :: real_connect () : (HY000 / 2002) : 라이브 서버에서 내 프로젝트에 액세스하려고 할 때 해당 파일이나 디렉토리가 없습니다. (0) | 2020.11.21 |
---|---|
MySQL : 쿼리에서 정렬-부작용이 있습니까? (0) | 2020.11.21 |
MySQL PHP 양식을 사용하여 여러 테이블에서 데이터를 검색하는 방법은 무엇입니까? (0) | 2020.11.21 |
MySQL CodeIgniter, 모델에서 컨트롤러로 여러 쿼리를 반환하는 방법은 무엇입니까? (0) | 2020.11.21 |
MySQL 서버를 설치하지 않고 MySQL 사용 (0) | 2020.11.21 |
댓글