반응형
MySQL의 COUNT CASE 및 WHEN 문
MySQL 쿼리에서 COUNT CASE 및 WHEN 문을 사용하여 데이터가 NULL이고 하나의 MySQL 쿼리에서 NULL이 아닐 때 카운트하는 방법은 무엇입니까?
사용:
SELECT SUM(CASE
WHEN t.your_column IS NULL THEN 1
ELSE 0
END) AS numNull,
SUM(CASE
WHEN t.your_column IS NOT NULL THEN 1
ELSE 0
END) AS numNotNull
FROM YOUR_TABLE t
그러면 전체 테이블에 대한 NULL이 아닌 NULL 열이 요약됩니다.필요에 따라 GROUP BY 조항이 필요할 수 있습니다.
COUNT가 null이 아닌 값만 카운트한다는 사실을 이용할 수 있습니다.
SELECT COUNT(IFNULL(t.your_column, 1)) AS numNull,
COUNT(t.your_column) AS numNotNull
FROM YOUR_TABLE t
또 다른 접근법은 논리적 조건이 숫자 0과 1로 평가된다는 사실을 사용하는 것입니다. 따라서 이것도 작동합니다.
SELECT IFNULL(SUM(t.your_column IS NULL), 0) AS numNull,
IFNULL(SUM(t.your_column IS NOT NULL), 0) AS numNotNull
FROM YOUR_TABLE t
선택한 행이 없는 경우(즉, 테이블이 비어 있거나 조건이 모든 행을 제외하는 경우) SUM이 NULL을 반환합니다. 이는 IFNULL 문에 대한 이유입니다.
언급URL : https://stackoverflow.com/questions/5045124/count-case-and-when-statement-in-mysql
반응형
'bestsource' 카테고리의 다른 글
마지막 자식보다 먼저 요소를 선택하려면 어떻게 해야 합니까? (0) | 2023.08.22 |
---|---|
MVC 컨트롤러에 대한 Ajax 호출 - URL 문제 (0) | 2023.08.22 |
Excel에서 첫 번째 문자를 소문자로 만드는 방법 (0) | 2023.08.22 |
순수 Java 구성을 사용하는 Spring 3.2 @value 주석은 작동하지 않지만 Environment.getProperty는 작동합니다. (0) | 2023.08.22 |
프로그램을 실행한 후 손상된 경우 Windows PowerShell 색상을 재설정하는 방법은 무엇입니까? (0) | 2023.08.22 |