【发布时间】:2013-05-22 22:56:45
【问题描述】:
这就是我想要做的,但失败得很惨:
我正在尝试从长度超过 12000 个字符的列中检索地址。幸运的是,我可以通过 XML 标签找到地址 line1:
<PermanentAddress> <AddressLine><![CDATA[1234 1st street]]></AddressLine> <City>
这是我到目前为止所做的:
select
substring(PC.css_record, CHARINDEX('<AddressLine>', PC.css_record)+ 21, CHARINDEX('</AddressLine>', PC.css_record))
from
table1
我也尝试在那里挤压长度函数来计算我的子字符串函数的长度末端,但这只是给了我一个错误(可能是因为我是 SQL 新手,还在学习和使用它错误)。
另外,标签有多个,但我只关心第一个。
如果有人能帮助我,那就太棒了!
谢谢!
【问题讨论】:
-
您是否将 XML 数据存储为
varchar而不是XML类型? -
是的。我没有看到使用 xml 类型的意义,因为我只想要报告的一小部分信息。
标签: sql sql-server substring string-length