我想从SQL select查询中删除调整行。这就是我现在所拥有的:
Resource Date Leave Position Hours Code
33333 26/02/2016 Sick Leave TRNSPLNR -7 SICK
33333 26/02/2016 Sick Leave TRNSPLNR 7 SICK
33333 26/02/2016 Vacation TRNSPLNR 7 VAC
这是最终结果应该是:
Resource Date Leave Position Hours Code
33333 26/02/2016 Vacation TRNSPLNR 7 VAC
答案 0 :(得分:1)
假设有两个这样的副本,你可以这样做:
select t.*
from t
where not exists (select 1
from t t2
where t2.date = t.date and
t2.leave = t.leave and
t2.resource = t.resource and
t2.hours = - t.hours
);
不清楚是什么导致重复,因此您可能希望在内部where
子句中添加更多比较。