이것은 기본적으로 달성하려는 것입니다.WHERE 절 또는 COUNT 내에 COUNT가 있습니까?
SELECT
COUNT(DISTINCT No)
FROM
Table
WHERE
(Type = 1 AND COUNT(DISTINCT No) > Num)
OR (Type = 2 AND COUNT(DISTINCT No) > Num)
GROUP BY
Week
이 작업을 수행하는 가장 좋은 방법은 무엇입니까?
이것은 기본적으로 달성하려는 것입니다.WHERE 절 또는 COUNT 내에 COUNT가 있습니까?
SELECT
COUNT(DISTINCT No)
FROM
Table
WHERE
(Type = 1 AND COUNT(DISTINCT No) > Num)
OR (Type = 2 AND COUNT(DISTINCT No) > Num)
GROUP BY
Week
이 작업을 수행하는 가장 좋은 방법은 무엇입니까?
모든 집계 비교 그룹으로 후 HAVING 절에 갈 필요가있다. 집계가 아닌 조건부를 두는 위치에 따라 다른 결과를 얻을 수도 있다는 것을 기억하십시오. WHERE를 통해 포함/제외 된 항목을 집계 할 것이기 때문입니다. 당신은 주에 의해 그룹화하는 경우
SELECT COUNT(DISTINCT No)
FROM Table
WHERE Type = 1
GROUP BY Week
HAVING COUNT(DISTINCT No) > Num
즉
은 확실히 당신은 카운트가되는 주보고 싶어,
SELECT COUNT(DISTINCT No)
FROM Table
GROUP BY Week
HAVING COUNT(DISTINCT No) > Num
AND Type = 1
사용
덕분에이 :
SELECT
COUNT(DISTINCT No) as num1
FROM TableName
WHERE Type IN (1,2)
GROUP BY Week
HAVING num1 > Num
SELECT Week, Type, COUNT(DISTINCT No) WeekTally
FROM [Table]
WHERE Type in (1,2)
GROUP BY Week, Type
HAVING COUNT(DISTINCT No) > @Num
ORDER BY Week, Type;
에서 다를 수있다?!
답변 해 주셔서 감사합니다. 집계에 포함되지 않았기 때문에 형식이 Having 절에 유효하지 않다는 오류 메시지가 나타납니다 ...이를 그룹에 추가해야합니까? – DtotheG
Ooops, 좋은 지적입니다. Type이 그룹화되지 않았거나 집계가 아니기 때문에 후자의 명령문은 작동하지 않습니다. – ludwigmace