这个SQL该如何写,关于分组和时间查询的问题
表结构是这样TimeField,groupField 
 其中TimeField   是表示时间的字段,groupField表示分类的字段 
 我要查询出TimeField   中距离现在时间最近的记录(该时间是比sysdate大的时间),同时groupField不为 'record1 '的记录   
 但是要把比TimeField   中比当前时间小的记录和groupField属于 'record1 '的记录都列在最后;   
 比如 
 TimeField,groupField 
 8:30                           record1 
 8:31                           record2    
 9:30                           record1 
 9:31                           record2    
 假如当前查询时间是8:35 
 查询结果是 
 9:31                           record2    
 8:30                           record1 
 8:31                           record2    
 9:30                           record1   
 请问有办法吗?
------解决方案--------------------//如果groupField只有 'record1 ' , 'record2 '2中的话,否则的要关联下  
 select min(TimeField), 'record2 ' from 表 where TimeField> sysdate and groupField <>  'record1 ' 
 union all 
 select * from 表 where TimeField  <>  (select min(TimeField) from 表 where TimeField> sysdate and groupField <>  'record1 ')
------解决方案--------------------实际上是取出了所有记录(至少楼主给出的例子就是这样的), 只是做一下排序 
 SELECT timefield, groupfield FROM tabel1 
 order by case when timefield> sysdate and groupfield <>  'record1 ' then 0 else 1 end