关于 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,')
最终看了下sql生成的数据源,发现数据源的顺序和ID字符串的顺序是不一样的,于是把sql 在数据库执行了下,发现IN的数据自动根据字段不排序了。于是,便开始找答案,
网上的该答案经验证可以。列此已做记录
SELECT * FROM dbo.TableName WHERE ID IN (37,35,36) ORDER By charindex(','+ CONVERT(NVARCHAR(100),ID) +',', ',37,35,36,')
相关文章推荐
- 数据库设计学习记录
- ORACLE性能调优之执行计划的使用
- Oracle ODI 11g 安装与技术开发文档
- excel连接mysql 数据库
- Centos 7.2 及php7环境下升级memcache未果,改安装 memcached
- oracle asm amdu和dd使用
- mysql的安装
- Sqlserver 语法总结
- MongoDB -- 更新
- golang mongodb (mgo)插入或读取文档的字段值为空(nil)问题解决
- Open edX Devstack使用图形界面工具链接MySQL远程vagrant数据库
- “DROP TABLE IF EXISTS” in Oracle and SQL Server
- MySQL基本命令
- pdo mysql长时间连接断掉时获取错误信息
- SQL-Duplicate Emails
- Mac卸载MySQL
- MySQL创建和操作数据库表demo
- mysql加减时间-函数-时间加减
- Oracle优化器
- 安装Ubuntu14.04下mysql5.7.9