SQL server 2008查询时,通过,分隔字符串
时间: 2024-05-03 17:17:21 浏览: 20
在 SQL Server 2008 中,可以使用内置的函数 `STRING_SPLIT` 来分割字符串。但是,如果你的 SQL Server 版本低于 2016,则可以使用以下代码来实现类似的功能:
```sql
DECLARE @String VARCHAR(100) = 'A,B,C,D,E'
DECLARE @Delimiter CHAR(1) = ','
;WITH Split(stpos,endpos) AS (
SELECT 0 AS stpos, CHARINDEX(@Delimiter,@String) AS endpos
UNION ALL
SELECT endpos+1, CHARINDEX(@Delimiter,@String,endpos+1)
FROM Split
WHERE endpos > 0
)
SELECT SUBSTRING(@String,stpos,COALESCE(NULLIF(endpos,0),LEN(@String)+1)-stpos) AS value
FROM Split
```
在这个例子中,我们首先声明了一个字符串变量 `@String`,并且使用逗号作为分隔符。我们使用 `CHARINDEX` 函数来查找分隔符的位置,并递归地分割字符串,直到找到最后一个分隔符。
最后,我们将分割后的字符串存储在临时表中,并使用 `SUBSTRING` 函数将其提取出来。
相关问题
sqlserver查询时逗号分隔字符串
如果你需要在 SQL Server 中查询时将一个字段中的逗号分隔字符串拆分成多行,可以使用以下方法:
假设你有一个名为 `MyTable` 的表,其中有一个名为 `MyField` 的字段,它包含逗号分隔的字符串。你可以使用以下查询来将字符串拆分成多行:
```
SELECT value
FROM STRING_SPLIT((SELECT MyField FROM MyTable), ',')
```
这将从 `MyField` 中选择逗号分隔的字符串,并使用 `STRING_SPLIT` 函数将其拆分成多行。
请注意,`STRING_SPLIT` 函数只在 SQL Server 2016 及更高版本中可用。如果你使用的是早期版本的 SQL Server,请考虑使用其他方法来拆分字符串,例如自定义函数或 XML 解析器。
SQL server通过空格分隔字符串
可以使用SQL Server内置函数`STRING_SPLIT()`来分隔字符串。例如,假设有一个字符串"apple banana cherry",我们可以使用以下代码将其分隔成三个值:
```
SELECT value FROM STRING_SPLIT('apple banana cherry', ' ')
```
输出:
```
value
------
apple
banana
cherry
```
其中,第二个参数是分隔符,这里使用空格。`STRING_SPLIT()`函数将字符串分隔成多个行,并在每行中返回一个值。然后,我们可以使用`SELECT`语句来检索每个值。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)