0
我在查詢中使用了窗口函數來根據行的組合值對行進行求和。現在,如果1行包含null,那麼我必須將其視爲false,我應該怎麼做?我曾嘗試在分區中添加coalesce(atg.flag,false)
,但它不起作用。如果爲空,則在窗口函數的分區子句中使用默認值
我在查詢中使用了窗口函數來根據行的組合值對行進行求和。現在,如果1行包含null,那麼我必須將其視爲false,我應該怎麼做?我曾嘗試在分區中添加coalesce(atg.flag,false)
,但它不起作用。如果爲空,則在窗口函數的分區子句中使用默認值
聚結是這樣的,這裏有一個例子:
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)
,你可以看到真正的
謝謝,我會再試一次。 :) – charmi
'聚結數= 2空,假,= 1(atg.flag,假)'應該管用。引用分區 - 你在談論窗口函數嗎? –
是的,我正在使用Windows功能。 – charmi
請** [編輯] **您的問題,並添加您正在使用的查詢。 [**格式化文本**](http://stackoverflow.com/help/formatting)請,[無屏幕截圖](http://meta.stackoverflow.com/questions/285551/why-may-i-not 285557#285557)** [編輯] **你的問題 - 做**不** **在代碼或附加信息的評論。 –