在看别人写的SQL里面有些关于左连接的问题有点不明白,
有的连接时不需要串标进行的 比如 tableX.field1='CONSTANTS',这么一句SQL,我却看到了tableX.field1='CONSTANTS'(+)这么一种写法(当然这条完整的SQL是串了很多张表),试问这个地方需要用左连接吗?
是不是加上左连接之后可以防止当tableX.field1为空的时候出不了数据的问题
各位指教了
有的连接时不需要串标进行的 比如 tableX.field1='CONSTANTS',这么一句SQL,我却看到了tableX.field1='CONSTANTS'(+)这么一种写法(当然这条完整的SQL是串了很多张表),试问这个地方需要用左连接吗?
是不是加上左连接之后可以防止当tableX.field1为空的时候出不了数据的问题
各位指教了
恩,是的。但是不是为了防止tableX.field1为空时候出数据,而是为了在tableX.field1='CONSTANTS'不成立为false的情况下依然可以查询到数据。
外连接对对多表关联字段而言,不能对定值
楼主要是想把tableX.field1为空的也显示出来,大可以改成
tableX.field1='CONSTANTS' or tableX.field1 is null
我只是对tableX.field1='CONSTANTS'(+)不理解,为什么要使用“(+)”进行左连接操作呢?
(+)保证了tableX数据全部输出。