[SQL] Programmer - 입양시각 구하기(2) <GROUP BY, SET @>
Problem Solution SELECT HOUR(DATETIME) AS HOUR, IFNULL(COUNT(DISTINCT(ANIMAL_ID)), 0) AS COUNT FROM ANIMAL_OUTS GROUP BY HOUR ORDER BY HOUR COUNT 가 NULL 값인 경우에 0을 반환하게 했음에도 불구하고, HOUR 칼럼의 모든 ROW가 출력되지 않았다. 도대체 왜 IFNULL() 함수가 제대로 동작하지 않는지... 궁금해서 HOUR를 모두 출력해보았다. 단순한 GROUP BY 문제인줄 알았던 나의 착각. 그러면 DB에 존재하지 않는 HOUR를 생성해야하는게 우선일것 같다. 0부터 23까지의 HOUR가 있는 테이블을 생성하고 ANIMAL_OUTS 테이블에서 그걸 사용해야하나보다. 요건 해본적이..
2023.04.07