你是想都為null的不關聯,還是也要做關聯。不關聯的話,就加上條件 where t1.a is not null如果也要做關聯,那是沒有意義的。
我是要,如果都为NULL的话,把他们关联起来 现在的情况是,他们没有关联,只查出来t1的数据
SELECT * FROM table1 t1 LEFT OUTER JOIN table2 t2 ON case t1.a when null then '1' end = case t2.c when null then '1' end ORDER BY t1.a 看行不行 我这里没有ORACLE不能测试
SELECT * FROM table1 t1 LEFT OUTER JOIN table2 t2 ON case when t1.a = null then '1' end = case when t2.c = null then '1' end ORDER BY t1.a 刚才写成SQL的了
JUST TRY IT .. SELECT * FROM TABLE1 T1 LEFT OUTER JOIN TABLE2 T2 ON NVL(T1.A, 0) = NVL(T2.C, 0) ORDER BY T1.A;
现在的情况是,他们没有关联,只查出来t1的数据
FROM table1 t1 LEFT OUTER JOIN table2 t2
ON case t1.a when null then '1' end = case t2.c when null then '1' end
ORDER BY t1.a
看行不行
我这里没有ORACLE不能测试
FROM table1 t1 LEFT OUTER JOIN table2 t2
ON case when t1.a = null then '1' end = case when t2.c = null then '1' end
ORDER BY t1.a
刚才写成SQL的了
SELECT *
FROM TABLE1 T1
LEFT OUTER JOIN TABLE2 T2 ON NVL(T1.A, 0) = NVL(T2.C, 0)
ORDER BY T1.A;
楼上的写得好。。比用case when效率会高点。。
nvl函数:当ti.a=null的时候置为0.
FROM TABLE1 T1
LEFT OUTER JOIN TABLE2 T2 ON NVL(T1.A, ' ') = NVL(T2.C, ' ')
ORDER BY T1.A;
这样也可以的,如果都是空,就让‘’= ‘’一样会链接起来的