排序后如何将记录插入表变量?
我尝试以下思考,但找不到结果。
DECLARE @tblFilterVendorValuesModel AS TABLE([Name] NVARCHAR(400), DisplayOrder INT);
DECLARE @tblFilterVendorValuesModel2 AS TABLE([Name] NVARCHAR(400), DisplayOrder INT);
INSERT INTO @tblFilterVendorValuesModel VALUES('ZE',0);
INSERT INTO @tblFilterVendorValuesModel VALUES('A',0);
INSERT INTO @tblFilterVendorValuesModel VALUES('E',0);
INSERT INTO @tblFilterVendorValuesModel VALUES('X',0);
INSERT INTO @tblFilterVendorValuesModel2
SELECT Name,DisplayOrder FROM @tblFilterVendorValuesModel ORDER BY Name DESC
SELECT 'SADF'
SELECT * FROM @tblFilterVendorValuesModel2
我得到了最终结果
ZE 0
A 0
E 0
X 0
但是我需要将此结果转换为asc显示顺序。
答案 0 :(得分:0)
在必要的列ORDER BY
中使用Name
:
SELECT * FROM @tblFilterVendorValuesModel2 ORDER BY Name
输出:
Name DisplayOrder
A 0
E 0
X 0
ZE 0
更新:
表中的数据未排序。因此,插入数据的顺序并不重要。
在您的C#代码中,您可以使用linq扩展方法OrderBy(x=> x.Name)