0

我有两个查询导致两个结果集我需要比较两个结果集并需要显示它们之间的差异。希望我会得到很好的支持。谢谢。这些是我的查询

查询:1

SELECT distinct c.sid_ident,c.fix_ident from corept.std_sid_leg as c INNER JOIN (SELECT sid_ident, transition_ident, max(sequence_num) seq, route_type FROM corept.std_sid_leg  WHERE data_supplier='J' AND airport_ident='KBOS' GROUP BY sid_ident,transition_ident) b ON c.sequence_num=b.seq and c.sid_ident = b.sid_ident and c.transition_ident =b.transition_ident WHERE c.data_supplier='J' and c.airport_ident='KBOS';

查询:2

SELECT name,trans FROM skyplan_deploy.deploy_sids ON d.name=c.sid_ident WHERE apt = 'KBOS' AND name != trans;

将对 corept.std_sid_leg 中的 sid_ident 字段和 skplan_deplay.deploy_sids 中的名称进行比较。由于Mysql不支持完全外连接,我想使用左连接和右连接并将结果结合起来。但我坚持了这一点。请帮助。我在使用左右连接时遇到语法错误。谢谢。

4

1 回答 1

1

以下查询应模拟FULL OUTER JOINMySQL 中的 a。

SELECT * 
FROM A
LEFT OUTER JOIN B
  ON A.NAME = B.NAME
WHERE B.ID IS NULL
  UNION ALL
SELECT * 
FROM B
LEFT OUTER JOIN A
  ON B.NAME = A.NAME
WHERE A.ID IS NULL;

将结果与FULL OUTER JOINSQL Server 中的实际结果进行比较,您会发现它有效。

于 2013-03-21T09:59:37.860 回答