sql - 使用 DISTINCT 时按 "original order"排序

标签 sql sql-server-2008 sorting distinct

我有下表:

CREATE TABLE [dbo].[TableB](
    [id] [int] NULL,
    [FileName] [varchar](20) NULL
)

INSERT INTO [TableB] ([id],[FileName])VALUES(1,'File2')                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
INSERT INTO [TableB] ([id],[FileName])VALUES(2,'File1')                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
INSERT INTO [TableB] ([id],[FileName])VALUES(3,'File1')

当我执行一个简单的 SELECT 时,它会给出以下结果:

id          FileName            
----------- --------------------
          1 File2               
          2 File1               
          3 File1  

但是,当我添加 DISTINCT 时,它给出:

FileName            
--------------------
File1               
File2

我不需要排序,我需要如下所示的结果:

FileName            
--------------------
File2               
File1

我正在使用 SQL Server 2008。我想保持结果的原始顺序。

最佳答案

假设您希望结果按每个文件名记录的第一个 id 排序,请尝试:

select FileName
from TableB
group by FileName
order by min(id)

关于sql - 使用 DISTINCT 时按 "original order"排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9465843/

相关文章:

sql-server - SQL Server 2008 与 SQL Server 2005 的兼容性

sql - 在 INNER JOIN 中选择 TOP

c++ - 如何将文件读入数组,然后对数据进行排序?

mysql - 我该如何优化这个 MySQL 查询?我应该使用联接吗?

sql - 计算不同记录(所有列)不起作用

sql-server-2008 - 当我知道 ISO 8601 中的周数时如何获得一周的第一天

algorithm - 用二进制树对整数进行排序?

使用数据结构的 C 程序部分的复杂性和解释

sql - 在 SQL 中,如何检查一个字符串是否是同一个表中任何其他字符串的子字符串?

c# - 如何在 block 内的异步查询的使用 block 中保持 SqlConnection 打开?