我有一个表格,其中一列名为PEGA ID,列的值为111,222等,而且还有一些0,当我执行qry时,所有的0都被过滤,我怎么能算这些0也可以,我可以使用工会?
SELECT
ivr.dw_dealer_id,
ivr.dw_product_id,
ivr.dw_program_type_id,
ivr.dw_month_id,
TO_CHAR(ivr_update_dt, 'YYYYMM') buss_month,
count(*)
FROM idm_ivr_interaction ivr, stgdba.interactions intr
WHERE ivr.cti_rec_id = intr.pega_id
答案 0 :(得分:0)
编辑:由于OP明确提到它是0
而不是null,我们将查询更改为使用case
。
count(case when ivr.dw_dealer_id = 0 then 1 else ivr.dw_dealer_id end)
或者只使用上一个OR
的查询。
SELECT
ivr.dw_dealer_id,
ivr.dw_product_id,
ivr.dw_program_type_id,
ivr.dw_month_id,
TO_CHAR(ivr_update_dt, 'YYYYMM') buss_month,
count(ivr.dw_dealer_id) as counts
FROM idm_ivr_interaction ivr, stgdba.interactions intr
WHERE ivr.cti_rec_id = intr.pega_id
AND (intr.pega_id IS NULL OR ivr.cti_rec_id IS NULL)
围绕id ...
包裹nvl
SELECT
ivr.dw_dealer_id,
ivr.dw_product_id,
ivr.dw_program_type_id,
ivr.dw_month_id,
TO_CHAR(ivr_update_dt, 'YYYYMM') buss_month,
count(nvl(ivr.dw_dealer_id,1))
FROM idm_ivr_interaction ivr, stgdba.interactions intr
WHERE ivr.cti_rec_id = intr.pega_id
AND (intr.pega_id IS NULL OR ivr.cti_rec_id IS NULL)
Group By
...与你正在使用的count
.......