关于 sqlserver的IN

前两天客户给返回一个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,')




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值