[SQL] PostgreSQL의 경우 카운트 조건
SQLPostgreSQL의 경우 카운트 조건
나는 PostgreSQL의에 쿼리를 다음 있습니다 :
SELECT
COUNT(a.log_id) AS overall_count
FROM
"Log" as a,
"License" as b
WHERE
a.license_id=7
AND
a.license_id=b.license_id
AND
b.limit_call > overall_count
GROUP BY
a.license_id;
왜이 오류가 않습니다
내 테이블 구조 :
License(license_id, license_name, limit_call, create_date, expire_date)
Log(log_id, license_id, log, call_date)
나는 라이센스가 특정 월의 호출에 대한 한계에 도달했는지 확인합니다.
해결법
-
==============================
1.
SELECT a.license_id, a.limit_call , count(b.license_id) AS overall_count FROM "License" a LEFT JOIN "Log" b USING (license_id) WHERE a.license_id = 7 GROUP BY a.license_id -- , a.limit_call -- add in old versions HAVING a.limit_call > count(b.license_id)
-
==============================
2.쿼리가 열 별칭을 인식하지 않으며, 또한, 당신이 집계 한 후 행을 필터링하려는 곳. 시험:
쿼리가 열 별칭을 인식하지 않으며, 또한, 당신이 집계 한 후 행을 필터링하려는 곳. 시험:
SELECT COUNT(a.log_id) AS overall_count FROM "Log" as a, "License" as b WHERE a.license_id=7 AND a.license_id=b.license_id GROUP BY a.license_id having b.limit_call > count(a.log_id);
이 집계 한 후 열을 다루는 것을 제외하고 HAVING 절은 where 절에 유사한 반면 곳 집계 전에 컬럼에 절 작동합니다.
또한, 테이블 이름은 큰 따옴표로 묶 이유가있다?
from https://stackoverflow.com/questions/8119489/postgresql-where-count-condition by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 어떻게 그룹에 DESC 순서에 의해 (0) | 2020.06.10 |
---|---|
[SQL] 내가 상용 응용 프로그램에서 무료로 SQL Server Express를 사용할 수 [마감] (0) | 2020.06.10 |
[SQL] PostgreSQL의 문자열 내에서 문자열의 발생 수를 계산 (0) | 2020.06.10 |
[SQL] 어떻게 .NET 응용 프로그램에서 SQL 서버 시간 데이터 유형을 사용 하는가? (0) | 2020.06.10 |
[SQL] 최대 절전 모드 문제 : 외래 키 컬럼의 수가 같아야 기본 키를 참조로 (0) | 2020.06.10 |