这有什么问题???接下来是我的任务:我有一个 XML 文件,我需要显示所有没有 Mick 的城市。!!!城市并不是独一无二的。例如,我有 Mick-London、Tom-London、Charles-Paris。正确答案是仅限巴黎。
查询适用于 SQL Server 2008。谢谢您的帮助。
这是 XML:
declare @x xml
set @x = '<database>
<persons>
<person fio="Mick" id="1" />
<work city="London" size="450" />
<state>United Kingdom </state>
</persons>
<persons>
<person fio="Tom" id="8" />
<work city="London" size="500" />
<state>UK</state>
</persons>
<persons>
<person fio="Charles" id="9" />
<work city="Paris" size="450000" />
<state>Frace</state>
</persons>
<persons>
<person fio="Some_name1" id="10" />
<work city="Brussels" size="30000" />
<state>Belgium</state>
</persons>
<persons>
<person fio="Some_name2" id="11" />
<work city="Munich" size="30000" />
<state>Germany</state>
</persons>
</database>'
我当前的脚本是:
select @x.query('//work[not(//person[@fio="Mick" and @city = this/../work/@city])]');