我想选择addressBook
表的所有行,其中来自巴黎的地址将是第一个。
我可以使用一个T-SQL查询吗?
更新 试过marc_s解决方案, 但是当值是in参数而不是const'paris'时,我也能这样做吗? 我在'='
附近得到了错误的语法答案 0 :(得分:3)
是 - 确定:
SELECT
(some columns),
SortOrder = CASE WHEN City = 'Paris' THEN 0 ELSE 1 END
FROM
dbo.addressBook
ORDER BY
SortOrder
答案 1 :(得分:1)
一些解决方案:
2个相同的选择,首先是条件地址来自巴黎,第二个是条件地址不是来自巴黎和UNION和ORDER BY
在Select语句中,创建一个人工列,当来自巴黎时为0,否则为1,并且按此顺序
在表格中创建一个带有序数排序的新列和ORDER BY this
解决方案的选择取决于您的需求。我想说,从维护的角度来看,(3)是最好的。