Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle:在两列中返回不同的值_Oracle - Fatal编程技术网

Oracle:在两列中返回不同的值

Oracle:在两列中返回不同的值,oracle,Oracle,我有这个查询,只想返回两列中的差异 SELECT C.id, C.START, D.start1 FROM table1 C LEFT JOIN table2 D ON C.ID = D.ID AND C.CARD = D.CARD 表: Id Start start1 1 1/1/15 1/1/15 2 1/2/15 1/2/15 3 1/5/15 1/6/15 4 1

我有这个查询,只想返回两列中的差异

SELECT 
    C.id, C.START, D.start1
FROM 
    table1 C
LEFT JOIN 
    table2 D ON C.ID = D.ID AND C.CARD = D.CARD
表:

 Id      Start     start1
  1      1/1/15    1/1/15
  2      1/2/15    1/2/15
  3      1/5/15    1/6/15
  4      1/9/15    1/9/16
我想看看

 Id      Start      Start1
 3      1/5/15      1/6/15
 4      1/9/15      1/9/16
我不知道从哪里开始,所以任何帮助都将不胜感激

使用以下命令:

Select Id,Start,start1 from table where start !=start1

这将起作用:通过外部查询包装查询并检查条件

SELECT * FROM
 (
    SELECT C.id, C.START, D.start1
    FROM table1 C
    LEFT JOIN table2 D ON C.ID = D.ID AND C.CARD = D.CARD
 ) q
WHERE q.START != q.start1

如果不使用查询中的任何字段,则无需在上联接表@JaydipJ他使用左连接和简化查询可能是有原因的。