2 回答

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超10個(gè)贊
以上SQL中的isnull 只對該括號內(nèi)的語句有用,但通過left join 後P表中有但T表中沒有的資料會自動用null替代,可將上述SQL修改為
SELECT P.RQ,P.KSBM,isnull(T.ty_sum,0) ,P.ks_sum,(P.ks_sum - isnull(T.ty_sum,0) ) sjKSSCFSL FROM
(SELECT ISNULL(NUM,0) ks_sum,RQ ,KSBM FROM KSSCFSL_sum ) P
LEFT JOIN
(SELECT ISNULL(NUM,0) ty_sum,RQ ,KSBM FROM ty_KSSCFSL_sum ) T
ON P.RQ = T.RQ AND P.KSBM = T.KSBM

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超2個(gè)贊
看不到更多信息,估計(jì)有以下兩種可能:
一,KSSCFSL_sum,ty_KSSCFSL_sum 兩個(gè)表里面的NUM字段不是INTEGER型,因?yàn)镮SNULL的兩個(gè)參數(shù)類型一定要一致。
二:NUM字段是String類型,并且是"NULL"字符串,而不是NULL。
你試試看。
添加回答
舉報(bào)