您的位置:首页 > 数据库

关于 sqlserver的IN

2015-12-21 16:23 239 查看
前两天客户给返回一个bug,说列表编辑完,保存时候原来的列表顺序变了,因为列表行用的js生成的,所以将数据的ID存储的,想了想,觉得这个js应该是没问题的,于是看了下数据的字段,发现ID字符串的顺序也是没问题的。

最终看了下sql生成的数据源,发现数据源的顺序和ID字符串的顺序是不一样的,于是把sql 在数据库执行了下,发现IN的数据自动根据字段不排序了。于是,便开始找答案,

网上的该答案经验证可以。列此已做记录

SELECT * FROM dbo.TableName WHERE ID IN (37,35,36) ORDER By charindex(','+ CONVERT(NVARCHAR(100),ID) +',', ',37,35,36,')


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: