Sql 如何对数据进行排序并将记录添加到数据集的第一个位置?

Sql 如何对数据进行排序并将记录添加到数据集的第一个位置?,sql,sql-server-2012,Sql,Sql Server 2012,我知道我可以创建一个临时表,插入记录,对它进行排序,然后在以后使用union,但我正在寻找其他途径。我尝试了一个cte,但我不得不订购整个东西,因为我的工会记录并没有保持在“顶部” 基本上,我有Id为INT的at-able、Name VARCHAR(MAX)字段,我想在返回集中的[0]行位置添加条目之前按名称排序。如果我在联合后排序,则我希望在第[0]行的行将与其一起排序 有什么想法吗 您使用联合查询的方法是正确的。强制使用静态值进行排序 CREATE TABLE #temp ( idn

我知道我可以创建一个临时表,插入记录,对它进行排序,然后在以后使用union,但我正在寻找其他途径。我尝试了一个cte,但我不得不订购整个东西,因为我的工会记录并没有保持在“顶部”

基本上,我有Id为INT的at-able、Name VARCHAR(MAX)字段,我想在返回集中的[0]行位置添加条目之前按名称排序。如果我在联合后排序,则我希望在第[0]行的行将与其一起排序


有什么想法吗

您使用联合查询的方法是正确的。强制使用静态值进行排序

CREATE TABLE #temp (
    idnt INT IDENTITY(2) NOT NULL --This begins the identity col with a value of 2
    ,Id INT
    ,Name VARCHAR(MAX)
)
INSERT INTO #temp
SELECT
    ...
FROM myTable
ORDER BY Name


CREATE TABLE #tempAPPEND (
    idnt INT IDENTITY(1) NOT NULL --This begins the identity col with a value of 1
    ,Id INT
    ,Name VARCHAR(MAX)
)
INSERT INTO #tempAPPEND (Id, Name)
VALUES ('34384','Pinal Dave') -- SAMPLE VALUES


SELECT * FROM #temp
UNION
SELECT * FROM #tempAPPEND
ORDER BY idnt
select 0 sortfield, '' name, etc
union 
select 1 sortfield, name, etc
from etc
order by sortfield, name.

临时表是我想要避免的。