我的查询中有两种情况,一种是我需要使用group by子句,另一种是我不想使用group by
所以在下面的查询If Name = Map ..然后使用group by..like this(表示只显示不同的ID' s)
select max(start_time),id,name from workitem where ( NAME = 'Map' or NAME = 'Validate') group by id,name;
但如果在上面的查询中名称不等于' Map'然后不要使用group by..like this(表示所有id甚至重复)
select start_time,id,name from workitem where ( NAME = 'Map' or NAME = 'Validate');
如何通过一个查询实现此目的
答案 0 :(得分:0)
select max(start_time),id
from workitem where ( NAME = 'Map' or NAME = 'Validate')
group by id,name
UNION ALL
select start_time,id
from workitem
where NAME <> 'Map';