-1

如果特定列在 sql server 2008 中多次具有相同的记录并按日期时间排序,如何选​​择不同的行。我在表中有以下列:

  1. ID
  2. 用户名
  3. 文件ID
  4. 约会时间

我尝试使用以下 sql:

SELECT DISTINCT(fileid) FROM [DatabaseName].[dbo].[TableName] where usernumber = '015578957'

如何在上面的 sql 中选择其他列并按 datetime 列排序,并返回 fileid 列不同的结果集行。

4

1 回答 1

1
select T.*
FROM [DatabaseName].[dbo].[TableName] T
JOIN
(
SELECT min(id) id, fileid
FROM [DatabaseName].[dbo].[TableName] 
group by fileid
)X ON T.id=X.id
where T.usernumber = '015578957'

如果要选择第一个不同的记录,请使用上述查询中的 MIN,如果要检索最后一个记录,请使用 MAX 而不是 MIN。

于 2012-10-17T08:04:16.503 回答