我的表格如下所示 -
Id Reference DateAttribute1 DateAttribute2
1 MMM005 2011-09-11 2012-09-10
2 MMM005 2012-06-13 2012-09-10
3 MMM006 2012-08-22 2012-09-10
4 MMM006 2012-08-22 2012-09-11
我已经处理了id值。我想查询一下,我得到以下结果
Id Reference DateAttribute1 DateAttribute2
2 MMM005 2012-06-13 2012-09-10
4 MMM006 2012-08-22 2012-09-11
我希望我的结果按引用进行分组,然后按'DateAttribute1'然后'DateAttribute2'进行分组 - DateAttribute1
的优先级高于DateAttribute2
,如上所示。<登记/>
我应该如何编写查询以上述方式获取结果?
任何解决方案?
答案 0 :(得分:1)
select max(id),Reference, min(DateAttribute1),max(DateAttribute2)
group by Reference
答案 1 :(得分:1)
Try it.....
选择* from(从id desc选择* from your_table顺序)作为x组 参考
答案 2 :(得分:0)
试试这个:
select *
from your_table t
join (
select Reference,
min(DateAttribute1) as DateAttribute1,
max(DateAttribute2) as DateAttribute2
from your_table
group by Reference
)a
on t.Reference=a.Reference
and t.DateAttribute1=a.DateAttribute1
and t.DateAttribute2=a.DateAttribute2
答案 3 :(得分:0)
假设表名为'tbl2'
select * from (select * from tbl2 order by REFERENCE,DateAttribute1 desc,
DateAttribute2 desc ) as abc group by reference