SQL基本查询问题

时间:2009-07-20 00:12:29

标签: sql sql-server

我将是第一个承认我的SQL技能缺乏的人。现在...

假设我们有一个名为Posts的数据库表,其中有三列:Id,RootId和DateTime。

我想做的是获取最后一个(按DateTime)20个不同的RootId值。

这里有一点需要注意:RootId可能是NULL,在这种情况下我们应该将该记录视为不同的,而不是NULL,应该返回Id。

查询是什么?

1 个答案:

答案 0 :(得分:2)

select distinct top 20 isnull(rootid,id) from posts order by datetime desc

假设这是针对MS SQL Server