本文主要是介绍SQL CHARINDEX使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
需要从表中取出如id in(148,153,149,156)符合条件的记录,需要保持取出记录仍按(148,153,149,156)顺序排列。
用到CHARINDEX函数
WHERE [id] in (148,153,149,156) ORDER BY CHARINDEX(','+CAST([Id] as varchar)+',',','+'148,153,149,156'+',')
相当于 构造一个 ,148,153,149,156, 找出其中 如 ,153, 的索引位置,所以需要在左右都加 ,
CAST (expression AS data_type [ (length ) ] )
在 SQL Server 2008 R2 中将一种数据类型的表达式转换为另一种数据类型的表达式。
CHARINDEX ( expression1 ,expression2 [ , start_location ] )
在 expression2 中搜索 expression1 并返回其起始位置(如果找到)。搜索的起始位置为 start_location
这篇关于SQL CHARINDEX使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!