2012-11-07 2 views
3

어떻게 열의 순서가 고유 한 것으로 간주 될 수 있습니까? 나는 내가 잘못 생각하고DISTINCT 여러 개의 열에 관해서는 주문해야합니까?

SELECT DISTINCT ON (the_geom,plz) the_geom

어떤 아이디어에 대한 행의 다른 번호를? 나는 postgreSQL 9.1.5를 사용하고 있습니다.

+2

@Mahmoud Gamal : DISTINCT와 DISTINCT ON은 다른 것입니다. 매뉴얼을 확인하십시오. –

답변

2

documentation suggests를 참조하십시오. 그러면 다음과 같이 작동합니다.

SELECT DISTINCT ON (the_geom,plz) 
     the_geom 
,  plz 
FROM YourTable 
ORDER BY 
     the_geom 
,  plz 

올바른 것을 생략하면 예기치 않은 결과가 발생할 수 있습니다.

+0

그게 전부 였어. 나는 어떤 행이 선택되었는지 예측할 수 없다고 생각했다. (나에게는 중요하지 않다.)하지만 ORDER BY가 없으면 함수는 쓸모 없다. – ratatosk

2

당신이 DISTINCTDISTINCT ON을 혼합하고, DISTINCT ON가 같은 열로 시작하는 order by이 필요하다는 the manual

0

나는 훨씬 더 간단한 것을 원할지도 모릅니다. 이게 당신이 원하는 것을 줄까요? :

SELECT DISTINCT the_geom FROM YourTable; 
+0

실제로 두 열에 만 DISTINCT가 있어야하며 모든 곳에서 그렇지는 않습니다. 당신의 본보기가 그렇게해야합니다. – ratatosk

관련 문제