2017-10-05 12 views
0

내 쿼리에서 창 함수를 사용하여 행 조합으로 값에 따라 행을 합계했습니다. 이제 1 행에 null이 들어 있으면 그걸 내가 틀린 것으로 간주해야합니까? 파티션에 coalesce(atg.flag,false)을 추가하려고했지만 작동하지 않았습니다.null 인 경우 창 함수의 partition 절에 기본값 사용

+0

'유착에 대한 (atg.flag, 거짓)을 볼 수있는' 작동해야합니다. 파티션을 참조하는 중 - 창 함수에 대해 말하고 있습니까? –

+0

예 Windows 기능을 사용하고 있습니다. – charmi

+0

** [EDIT] ** 질문을하고 사용중인 검색어를 추가하십시오. [** 포맷 된 텍스트 **] (http://stackoverflow.com/help/formatting)하시기 바랍니다. [스크린 샷 없음] (http://meta.stackoverflow.com/questions/285551/why-may-i-not -upload-images-of-code-on-so-ask-a-question/285557 # 285557) ** [편집] ** 귀하의 질문 - 코멘트 **에 코드 또는 추가 정보를 게시하지 마십시오. –

답변

0

유착, 여기 방법입니다 예입니다

t=# with dset(i,bool) as (values(1,true),(2,false),(3,null)) 
select i, bool::text, count(1) over (partition by coalesce(bool,false)) 
from dset; 
i | bool | count 
---+-------+------- 
2 | false |  2 
3 |  |  2 
1 | true |  1 
(3 rows) 

당신이 널 (null)과 거짓에 대한 계수 = 2 = 1 진정한

+0

고맙습니다. 다시 시도해 보겠습니다. :) – charmi