SQL server截取列为地址,内容(湖北-天门-渔薪) (广东-深圳-宝安)(内蒙古-呼和浩特-赤峰) 里面的‘天门‘深圳‘呼和浩特,怎么截取出来’’’
时间: 2023-05-25 15:00:59 浏览: 164
感谢您使用 CSDN 开发的 C知道 AI,很高兴为您解答问题。
针对您的问题,可以使用 SQL Server 中的 SUBSTRING 和 CHARINDEX 函数来实现截取所需内容。具体操作步骤如下:
1. 使用 CHARINDEX 函数在文本中查找分隔符的位置。本例中分隔符为“-”。
2. 使用 SUBSTRING 函数截取分隔符之间的内容。
3. 按照此方法,循环处理每个地址中的分隔符,直到截取出需要的内容。
下面是具体的 SQL 语句示例:
```
DECLARE @string VARCHAR(100) = '湖北-天门-渔薪'
DECLARE @delimiter CHAR(1) = '-'
DECLARE @pos1 INT, @pos2 INT
SET @pos1 = CHARINDEX(@delimiter, @string, 1)
SET @pos2 = CHARINDEX(@delimiter, @string, @pos1 + 1)
SELECT SUBSTRING(@string, @pos1 + 1, @pos2 - @pos1 - 1) AS City
```
通过以上 SQL 语句,可以截取出字符串“天门”。您可以根据这个方法,自行编写一段循环处理的脚本,来截取所有地址中的城市信息。
希望以上回答能够帮助到您,如有其他问题,欢迎随时提出。
阅读全文
相关推荐










