반응형
조건을 기준으로 한 열 개수
아래와 같이 오라클 쿼리를 생성했습니다. 쿼리는 정상적으로 작동하지만 문제는 카테고리가 A이고 ID가 1인 이름 개수 열을 하나 더 원한다는 것입니다.
SELECT name, velocity, COUNT(*) AS count, category FROM section GROUP BY name, velocity
이것에 대한 해결책을 알려주실 수 있나요?
SELECT name, velocity, COUNT(*) AS count,
COUNT(CASE WHEN category = 'A' AND id = 1 THEN 1 END)
FROM section
GROUP BY name, velocity
이게 통할 겁니다.
레코드가 조건을 충족하지 못하면 NULL을 반환하고 카운트는 NULL 필드를 건너뜁니다.
이와 같은 것:
SELECT name, velocity, COUNT(*) AS count,
SUM(CASE WHEN category = 'A' AND id = 1 THEN 1 ELSE 0 END)
FROM section
GROUP BY name, velocity
SELECT name, velocity, COUNT(*) AS count, category,
(select count(distinct name) from section where category = 'A' and id = 1)
FROM section
GROUP BY name, velocity
언급URL : https://stackoverflow.com/questions/33169707/column-count-based-on-a-condition
반응형
'programing' 카테고리의 다른 글
Python에서 지정된 URL에 매개 변수 추가 (0) | 2023.07.02 |
---|---|
인터페이스에 클래스 바인딩 (0) | 2023.07.02 |
'dplyr'의 새 열/변수에 동적 이름 사용 (0) | 2023.07.02 |
스프링 부트 구성 요소는 단일 클래스를 포함할 수 있습니다. (0) | 2023.07.02 |
TypeScript에서 부울을 숫자로 캐스팅하는 방법(예: 0 또는 1) (0) | 2023.07.02 |