2013-04-17 96 views
0

我有兴趣从字符串中查找字符索引,其中字符是空格或_(下划线)或 - (连字符)。从字符串列表中查找任何字符的索引

SELECT CHARINDEX(' ','kjhk wonderful', 1) 

(返回5) 可如果我搜索“空间”中使用,但我感兴趣中提到的符号中的任一个,即是第一位的。请有任何想法吗?什么是正确的语法?

回答

4

入住这

SELECT PATINDEX('%[ _-]%','kjhk wonderful') 
1

这很麻烦,所以可能有一个更好的方法,但下面的工作。

SELECT MIN(pos) FROM 
(
    SELECT CHARINDEX(' ','kj-hk won_derful', 1) AS pos 
    UNION ALL 
    SELECT CHARINDEX('_','kj-hk won_derful', 1) AS pos 
    UNION ALL 
    SELECT CHARINDEX('-','kj-hk won_derful', 1) AS pos 
) as query 
相关问题