我执行两个查询并得到奇怪的结果.我想知道为什么会这样.
现在查询:
SELECT * FROM TABLE_A a, TABLE_B b, TABLE_C c
WHERE a.a = b.a (+)
AND b.c = c.c
AND a.a = 123;
Run Code Online (Sandbox Code Playgroud)
结果为空.
SELECT COUNT(*) FROM TABLE_A a, TABLE_B b, TABLE_C c
WHERE a.a = b.a (+)
AND b.c = c.c
AND a.a = 123;
Run Code Online (Sandbox Code Playgroud)
结果是1.
它实际上是具有不同返回值的相同查询.
表A包含'a'字段= 123的
行.表B不包含aa = ba的行
如何为同一查询返回任何内容或1?
更新:
当我这样做的时候
SELECT COUNT(*) FROM TABLE_A a, TABLE_B b, TABLE_C c
WHERE a.a = b.a (+)
AND b.c = c.c (+)
AND a.a = 123; …Run Code Online (Sandbox Code Playgroud)