【发布时间】:2019-09-12 23:09:32
【问题描述】:
我需要从 XML 列中检索所有以“+”结尾的句子。我当前的查询仅检索第一句话。
以下是 XML 内容:
<file>
<row>Addendum and/or contract providing additional event details and conditions. +</row>
<row />
<row>Special duty officer(s) required for event. There are charges for these services.+</row>
<row />
<row>Notify Mall Crew of electrical needs for activities.+</row>
<row />
<row>8’ pedestrian pathway must be maintained on sidewalks throughout event area.~</row>
<row />
<row>Provide and maintain access to the Hotel during event.~</row>
<row />
<row>Event organizer/sponsor is responsible for cleanup of event area.|</row>
<row />
</file>
您可以看到有三行以“+”结尾的句子。我运行这个查询:
SELECT b.value('(./row/text())[1]','nvarchar(max)') as [row]
FROM @xmlstr.nodes('/file') AS a(b)
WHERE right(b.value('(./row/text())[1]','nvarchar(max)'), 1) = '+'
但我只得到第一句话,我需要所有最后带有加号的句子。
如果有人能帮我解决这个问题,我将非常感激
提前谢谢你。
【问题讨论】:
标签: sql xml tsql parsing sql-server-2012