charindex
时间: 2023-11-25 10:06:09 浏览: 85
`CHARINDEX` 是 SQL Server 中的字符串函数,用于查找一个子字符串在另一个字符串中第一次出现的位置。它的语法是:
```
CHARINDEX ( expression1 , expression2 [ , start_location ] )
```
其中,`expression1` 是要查找的子字符串,`expression2` 是被查找的字符串,`start_location` 是可选参数,表示开始查找的位置,默认为 1。如果找到了子字符串,则返回它在被查找的字符串中的起始位置;否则返回 0。
相关问题
sql charindex
SQL Server中的CHARINDEX函数是用于查找一个字符串中某个子字符串的位置的函数。它返回子字符串在字符串中第一次出现的位置,如果未找到则返回。该函数的语法如下:
CHARINDEX ( expressionToFind , expressionToSearch [ , start_location ] )
其中,expressionToFind是要查找的子字符串,expressionToSearch是要在其中查找子字符串的字符串,start_location是可选参数,表示从哪个位置开始查找子字符串。如果未指定start_location,则从字符串的第一个字符开始查找。
SQL CHARINDEX
SQL `CHARINDEX` 函数用于查找一个字符串(称为搜索字符串)在另一个字符串(称为主体字符串)中首次出现的位置。它返回的是搜索字符串在主体字符串中开始的字符位置索引,如果找不到则返回0。
示例7展示了如何使用`CHARINDEX`[^1]:
```sql
DECLARE @Name AS VARCHAR(100) = 'Explore SQL Server with articles on SQLShack';
SELECT
CASE
WHEN CHARINDEX('SQLShack', @Name) > 0 THEN 'Exists'
ELSE 'Not Exists'
END AS FindSubString;
-- 这里会返回 'Exists',因为 'SQLShack' 在 @Name 中存在
-- 如果我们搜索 'Rajendra',则会返回 'Not Exists',因为 'Rajendra' 不在 @Name 中
SELECT
CASE
WHEN CHARINDEX('Rajendra', @Name) > 0 THEN 'Exists'
ELSE 'Not Exists'
END AS FindSubString;
```
通过`CASE`语句,你可以根据`CHARINDEX`的结果决定返回"Exists"或"Not Exists"。
阅读全文