Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用sql字符索引在单词Malayalam.com中找到第三个“a”位置?_Sql_Sql Server_Tsql - Fatal编程技术网

如何使用sql字符索引在单词Malayalam.com中找到第三个“a”位置?

如何使用sql字符索引在单词Malayalam.com中找到第三个“a”位置?,sql,sql-server,tsql,Sql,Sql Server,Tsql,您可以使用: CHARINDEX ( expressionToFind , expressionToSearch [ , start_location ] ) 您可以使用: CHARINDEX ( expressionToFind , expressionToSearch [ , start_location ] ) 我想你在找我 WITH cte AS ( SELECT 'Malayalam' s ) SELECT cte.s, s3.r FROM cte OUTER APPLY (S

您可以使用:

CHARINDEX ( expressionToFind , expressionToSearch [ , start_location ] )
您可以使用:

CHARINDEX ( expressionToFind , expressionToSearch [ , start_location ] )

我想你在找我

WITH cte AS (
  SELECT 'Malayalam' s
)
SELECT cte.s, s3.r
FROM cte
OUTER APPLY (SELECT CHARINDEX('a', cte.s, 0))      s1(r) -- first occurence
OUTER APPLY (SELECT CHARINDEX('a', cte.s, s1.r+1)) s2(r) -- second occurence
OUTER APPLY (SELECT CHARINDEX('a', cte.s, s2.r+1)) s3(r) -- third occurence
-- ...

我想你在找我

WITH cte AS (
  SELECT 'Malayalam' s
)
SELECT cte.s, s3.r
FROM cte
OUTER APPLY (SELECT CHARINDEX('a', cte.s, 0))      s1(r) -- first occurence
OUTER APPLY (SELECT CHARINDEX('a', cte.s, s1.r+1)) s2(r) -- second occurence
OUTER APPLY (SELECT CHARINDEX('a', cte.s, s2.r+1)) s3(r) -- third occurence
-- ...

还可以使用CHARINDEX获取字符“a”的第三个位置,如下所示-

仅当存在至少3个字符“a”时,才会返回正确的结果

+----------------------+-----------+-----------+
| CharPositionInString | Character | Occurence |
+----------------------+-----------+-----------+
|                    1 | M         |         1 |
|                    2 | a         |         1 |
|                    3 | l         |         1 |
|                    4 | a         |         2 |
|                    5 | y         |         1 |
|                    6 | a         |         3 |
|                    7 | l         |         2 |
|                    8 | a         |         4 |
|                    9 | m         |         2 |
+----------------------+-----------+-----------+

还可以使用CHARINDEX获取字符“a”的第三个位置,如下所示-

仅当存在至少3个字符“a”时,才会返回正确的结果

+----------------------+-----------+-----------+
| CharPositionInString | Character | Occurence |
+----------------------+-----------+-----------+
|                    1 | M         |         1 |
|                    2 | a         |         1 |
|                    3 | l         |         1 |
|                    4 | a         |         2 |
|                    5 | y         |         1 |
|                    6 | a         |         3 |
|                    7 | l         |         2 |
|                    8 | a         |         4 |
|                    9 | m         |         2 |
+----------------------+-----------+-----------+

你到底想干什么?为什么要用CHARINDEX?你到底想做什么?为什么要使用CHARINDEX?