0

这是查询

select *
FROM 
WEBSS.P0022_INVENTORY_ACTIVITY_LOG I LEFT OUTER JOIN WEBSS.P0029_LOCATION L2 ON I.INVT_XFER_LOC_ID = L2.LOC_ID,
WEBSS.P0029_LOCATION L
WHERE 
I.LOC_ID = L.LOC_ID 
UNION ALL 
select *
FROM 
WEBSS.P0022_INVENTORY_ACTIVITY_LOG I LEFT OUTER JOIN WEBSS.P0029_LOCATION L2 ON I.LOC_ID = L2.LOC_ID,
WEBSS.P0029_LOCATION L
WHERE 
I.INVT_XFER_LOC_ID = L.LOC_ID; 

你能告诉我我能以有效的方式使用第二个查询吗?

当您查看查询时,您会发现条件有一个小的变化..所以我们真的需要进行两个查询 nwith union all..

我需要调整第二个查询,即..任何可能的方法来重写第二个查询以获得良好的性能..对此有什么帮助吗?

提前致谢。

4

1 回答 1

1

我不是db2专家,但是sql语句一般都是一样的

  • UNION ALL 返回也重复
  • 仅使用 Union 以不返回重复项
  • 如果您不在联合中添加“()”,它将完成它会按照您编写它们的顺序执行联合http://msdn.microsoft.com/en-us/library/ms180026.aspx
  • 为什么你从 WEBSS.P0029_LOCATION L 中选择而不使用左连接?我会使用两个左连接,是吗
于 2012-11-26T13:49:45.903 回答