在一些查询中,尤其是批量查询的时候,经常遇到in,但是使用in的时候,查询结果并不是按照你in里面的顺序排列的,有些时候不得不再找其他方法。
找了很久发现一个解决办法。
最简单的例子,select * from student where id in (2,1,3)order by CHARINDEX(ltrim(id),'2,1,3' )
本文介绍了一种在SQL查询中使用IN子句时保持结果顺序的方法。通过使用CHARINDEX函数结合ltrim函数,可以确保返回的数据按照指定的顺序排列,避免了额外的排序操作。
在一些查询中,尤其是批量查询的时候,经常遇到in,但是使用in的时候,查询结果并不是按照你in里面的顺序排列的,有些时候不得不再找其他方法。
找了很久发现一个解决办法。
最简单的例子,select * from student where id in (2,1,3)order by CHARINDEX(ltrim(id),'2,1,3' )
7620

被折叠的 条评论
为什么被折叠?