返回所有行,即使equals不返回任何数据(Oracle SQL)

返回所有行,即使equals不返回任何数据(Oracle SQL),sql,oracle,Sql,Oracle,我希望能够查询2个表,并最终返回2列中的所有内容,即使参数不匹配。检查表中未填充的位置,DO_表有一个REF,CO_表有一个ORDER_编号。每个REF都应该有一个ORDER_编号 因此,这将返回所有内容: SELECT a.REF, b.ORDER_NO FROM DO_TABLE a, CO_TABLE b WHERE a.REF=b.ORDER_NO 结果是 REF |ORDER_NO 06191796 |06191796 06191794 |0619

我希望能够查询2个表,并最终返回2列中的所有内容,即使参数不匹配。检查表中未填充的位置,DO_表有一个REF,CO_表有一个ORDER_编号。每个REF都应该有一个ORDER_编号

因此,这将返回所有内容:

SELECT a.REF, b.ORDER_NO
FROM DO_TABLE a, CO_TABLE b
WHERE a.REF=b.ORDER_NO
结果是

REF         |ORDER_NO  
06191796    |06191796  
06191794    |06191794  
06191678    |06191678  
06191797    |06191797  
06191806    |06191806  
但我想在订单号不存在时显示参考号,因此如果第2和第4参考号没有订单号,则看起来像:

REF         |ORDER_NO  
06191796    |06191796  
06191794    |  
06191678    |06191678  
06191797    |  
06191806    |06191806  
任何帮助,都会收到

TJ

切勿在
FROM
子句中使用逗号。始终使用正确、明确的
JOIN
语法。如果这样做,您将了解外部联接:

SELECT a.REF, b.ORDER_NO
FROM DO_TABLE a LEFT JOIN
     CO_TABLE b
     ON a.REF = b.ORDER_NO;