在XML列多个值这是我的表搜索SQL
BasketId(int) BasketName(varchar) BasketFruits(xml)
1 Gold <FRUITS><FID>1</FID><FID>2</FID><FID>3</FID><FID>4</FID><FID>5</FID><FID>6</FID></FRUITS>
2 Silver <FRUITS><FID>1</FID><FID>2</FID><FID>3</FID><FID>4</FID></FRUITS>
3 Bronze <FRUITS><FID>3</FID><FID>4</FID><FID>5</FID></FRUITS>
我需要寻找具有FID
值1和3 所以,在这种情况下,篮我会得到黄金和银
虽然我已经达到的结果,我可以寻找像使用此代码 一个单FID值:
declare @fruitId varchar(10);
set @fruitId=1;
select * from Baskets
WHERE BasketFruits.exist('//FID/text()[contains(.,sql:variable("@fruitId"))]') = 1
如果这是T-SQL,我会用IN子句这样
SELECT * FROM Baskets where FID in (1,3)
任何帮助/变通赞赏...
出色的工作!长期以来一直在寻找这个答案。伟大的工作Mikael Eriksson。你是男人! – nav 2011-05-30 02:03:52