Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 从一个表中选择xml,其中包含sql server中另一个表中更新的数据(值)_Sql Server_Xml_Sql Server 2008_Xquery - Fatal编程技术网

Sql server 从一个表中选择xml,其中包含sql server中另一个表中更新的数据(值)

Sql server 从一个表中选择xml,其中包含sql server中另一个表中更新的数据(值),sql-server,xml,sql-server-2008,xquery,Sql Server,Xml,Sql Server 2008,Xquery,我想从现有的XML生成XML,但值应该来自其他表。例如,我在一个表中有以下xml: <LABEL COLOR=RED> Account #: </LABEL> <VALUE> ACCT_NUM </VALUE> <LABEL COLOR=RED> Emp. Name: </LABEL> <VALUE> Emp_Name </VALUE> 现在,它应该以以下格式生成xml <LABEL COLO

我想从现有的XML生成XML,但值应该来自其他表。例如,我在一个表中有以下xml:

<LABEL COLOR=RED> Account #: </LABEL>
<VALUE> ACCT_NUM </VALUE>
<LABEL COLOR=RED> Emp. Name: </LABEL>
<VALUE> Emp_Name </VALUE>
现在,它应该以以下格式生成xml

<LABEL COLOR=RED> Account #: </LABEL>
<VALUE> 1234 </VALUE>
<LABEL COLOR=RED> Emp. Name: </LABEL>
<VALUE> Kash </VALUE>
在谷歌搜索了两天后,我找不到任何方法来做这件事

我正在使用SQLServer2008


任何帮助…

我使用

`DECLARE @t TABLE (id INT, data XML)
DECLARE @t2 TABLE (id INT, value varchar(50))

INSERT INTO @t (id, data)
SELECT 1,
'
<data>
  <label>1</label>
  <value>test</value>
</data>
'

INSERT INTO @t2 (id, value)
SELECT 1, 'Kash' union all
SELECT 2, 'Moeen'

--Update value of an element in xml from other table
UPDATE t1
SET data.modify
(
'
replace value of (//value/text())[1] with sql:column("value")
'
)
FROM @t t1
INNER JOIN @t2 t2 on t1.id = t2.id

SELECT data FROM @t
`
`DECLARE @t TABLE (id INT, data XML)
DECLARE @t2 TABLE (id INT, value varchar(50))

INSERT INTO @t (id, data)
SELECT 1,
'
<data>
  <label>1</label>
  <value>test</value>
</data>
'

INSERT INTO @t2 (id, value)
SELECT 1, 'Kash' union all
SELECT 2, 'Moeen'

--Update value of an element in xml from other table
UPDATE t1
SET data.modify
(
'
replace value of (//value/text())[1] with sql:column("value")
'
)
FROM @t t1
INNER JOIN @t2 t2 on t1.id = t2.id

SELECT data FROM @t
`