我想选择addressBook
表的所有行,其中巴黎的地址将首先显示。SQL:如何将优先级设置为特定属性?
我可以用一个T-SQL查询来做到吗?
更新: 试图marc_s的解决方案, 但我可以做到这一点也当值的参数,而不是常量“巴黎”? 我得到附近有语法错误='
我想选择addressBook
表的所有行,其中巴黎的地址将首先显示。SQL:如何将优先级设置为特定属性?
我可以用一个T-SQL查询来做到吗?
更新: 试图marc_s的解决方案, 但我可以做到这一点也当值的参数,而不是常量“巴黎”? 我得到附近有语法错误='
一对夫妇的解决方案:
2相同选择,先用从巴黎的条件地址,第二与不从巴黎和UNION和ORDER条件地址BY
在Select语句,创建一个人工列是0时,从巴黎,否则为1和ORDER BY在这张桌子
创建一个新列序号或dering and ORDER BY this
解决方案的选择取决于您的需求。我认为,从维修的角度来看,(3)是最好的。
我可以做到这一点,当值是一个参数,而不是const'巴黎'?我在'='' –
附近得到了错误的语法。解决方法1是**错误** - 除非有'ORDER BY'子句,否则* UNION或UNION ALL的结果顺序不能保证。 –
当然,在那里添加了这个。谢谢。 –
是 - 肯定:
SELECT
(some columns),
SortOrder = CASE WHEN City = 'Paris' THEN 0 ELSE 1 END
FROM
dbo.addressBook
ORDER BY
SortOrder
你可以发布你的表的结构吗? – Maess