SQL Server选择查询以显示按插入或更新的最新记录排序的所有记录

时间:2013-06-23 14:18:18

标签: sql-server-2008

我有一个名为Employee的表,其中包含以下列和数据库中的记录  

id     login_time                  logout_time 
1     23/6/2013 9:00 
3     23/6/2013 9:20               23/6/2013 1:00
2     23/6/2013 1:30
但我想根据最新的更新记录显示上表记录,下面是样本输出。

id     login_time                  logout_time 
2     23/6/2013 1:30
3     23/6/2013 9:20               23/6/2013 1:00
1     23/6/2013 9:00 

有人可以帮助我。

2 个答案:

答案 0 :(得分:2)

假设我已经理解了你的问题。如果您想要依赖于两个列中的值,您可以在订单上使用条件运算符,例如:

SELECT
    *
FROM Employee
ORDER BY 
    CASE
      WHEN login_time > logout_time THEN login_time 
      ELSE logout_time
    END DESC

但理想情况下,如果您想按最后更新的顺序进行排序。记录。就个人而言,我会重新审视数据库设计,并有一个“DateUpdated”'更新值时填充的列,您只需按此顺序排序。

答案 1 :(得分:0)

select * from Employee order by login_time  desc