2013-11-21 2 views
3

나는 형태의 테이블을 가지고 : (답변SQL 필터

이 StateName, ContryName, 팝 등 BTW 상태도 지방있을 수 있습니다, 나는

interchangeabley를 사용 // PostgreSQL의 9.2를 위해 일해야한다

내가 너무 많은 상태

이 필터를 않습니다이있는 국가를 제거하고 싶지만, 나는 국가 (states.admin)을 그룹화하고 있기 때문에 states.name이 그룹에없는 때문에 오류가 발생하는 절.

필자는 필터링 된 테이블을 원한다. 100 개가 넘는 국가가있는 모든 행.

나는 의미가 있습니까? 나는 일종의 WHERE 하위 쿼리가 필요하다고 가정합니다.

sqlfiddle demo

+0

상태도 province' 할 수있다'어떻게 당신은 100 개 이상의 국가와 국가를 찾을 것

SELECT states.name, states.admin FROM vector.states GROUP BY states.admin HAVING COUNT(*) < 100 ORDER BY states.admin ASC; 

+0

영어가 능숙하지 않은 프로그래머입니다. 나는 주와 주를 나열하는 테이블을 가지고있다. 나는 STATES 테이블을 불렀다. 그러나 데이터는 전 세계적입니다. 하지만 그것은 동일한 지리적 아이디어입니다 (SHAPE 파일이 구조화 된 방법입니다). 두 번째 레벨의 관리 경계 (국가 수준에서 하나 아래로)가 있습니다. –

+0

아직 테이블 정의가 없습니다 .. –

답변

6
SELECT s.name,s.admin 
FROM states s 
INNER JOIN (
SELECT ss.admin 
FROM states ss 
GROUP BY ss.admin 
HAVING COUNT(*) < 100 
) a ON a.admin = s.admin 
ORDER BY s.admin ASC; 
? 진지하게 생각하면이 질문에 답할 수 없습니다. 서로 다른 유형의 데이터를 동일한 열에 쓰고는 구별 할 수없는 것은 매우 나쁜 설계입니다. 또한, 이와 같은 질문은`\ d vector.states`와 함께 psql에서 얻을 수있는 최상의 테이블 정의를 제공해야합니다. 그러면 어떤 열이 기본 키인지 알 수 있습니다.
+0

고맙습니다. –

+0

코드가 잘 작동하고 훌륭하지만 원하는 필터를 필터링하지 않았습니다. 원하는 경우 수정 된 질문은 다음과 같습니다. http://stackoverflow.com/questions/20151418/sql-query-to-filter- 카운트 앤드 애트리뷰트 –