我有一个查询,从具有相同的字段值几桌,但2下表中检索,SQL查询到2场结合
查询
SELECT A.NUM_RIF, B.NDG, D.NDG FROM ICGR1100 A
LEFT JOIN (ICGR1105 E INNER JOIN ICGR1101 D ON E.C_IST=D.C_IST AND E.DT_DOM_NDG=D.DT_DOM_NDG AND E.N_DOM=D.N_DOM) ON A.C_IST=E.C_IST AND A.NUM_RIF=E.NUM_RIF
LEFT JOIN ICGR1103 B ON A.C_IST=B.C_IST AND A.NUM_RIF=B.NUM_RIF
的结果是:
NUM_RIF NDG NDG
---------------- ---------------- ----------------
0000000000000981 (null) 0000000000002490
0000000000000985 (null) 0000000000002490
0000009000004523 0000000000001775 (null)
0000009000004521 0000000000001775 (null)
0000009000004218 0000000000001775 (null)
0000000000000980 (null) (null)
0000009000004914 0000000000002490
0000009000004917
0000009000004923 0000000000002490
所以我的期望结果如下:
NUM_RIF NDG
---------------- ----------------
0000000000000981 0000000000002490
0000000000000985 0000000000002490
0000009000004523 0000000000001775
0000009000004521 0000000000001775
0000009000004218 0000000000001775
0000000000000980 (null)
0000009000004914 0000000000002490
0000009000004914
0000009000004923 0000000000002490
这种情况是两个字段可能都有空值,或者为空,或者其中一个将为空/空值,但到目前为止在两个字段中都没有值,这意味着只有一个字段有值
这两列可以在同一行上有一个值吗? –
至多有一个NDG具有价值是否总是如此? – Fildor
'NUM_RIF = 0000009000004914'的'NDG'的值是多少?在你的例子中,列是空格,而在上面输入'(null)'。例如它是一个零=长度的字符串?另外,你是否有一个特定的SQL产品? (用Apache的名字猜猜mySQL;) – onedaywhen