在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