【发布时间】:2013-02-19 09:53:37
【问题描述】:
我在单行中有值,由某个分隔符分隔,它是数据库中的单行。但是在检索值时,我希望根据行中存在的分隔符将值作为多行获取。
以下是我的查询:
SELECT (
SELECT
RTRIM(ISNULL(T1.[CIMtrek_Keywords],'')) AS '@CIMtrek_Keywords'
FROM
(SELECT
NULLIF(CD.[CIMtrek_Keywords],'') CIMtrek_Keywords
FROM CIMtrek_SystemTable_DatawareHouse CD WHERE LEN(LTRIM(RTRIM(ISNULL(LTRIM(RTRIM(CD.[CIMtrek_KeyField])),'')))) != 0 and CIMtrek_KeyField='CER Type') AS T1
FOR XML PATH('Record'), TYPE ) FOR XML PATH('CarrierCode_Destination'), TYPE
以下是我得到的结果。
<CarrierCode_Destination>
<Record CIMtrek_Keywords="Bucket - Minor Project|Bucket - Major Project|Budget - Named Project|AddFund - Named Project|Already Approved|Admin" />
</CarrierCode_Destination>
但我希望关键字在上述情况下以多行形式出现,它将是五行,因为稍后我将不得不将这些值带入组合框中。
请帮我做这件事。
最好的问候
【问题讨论】:
标签: sql xml sql-server-2008 xquery