我有存儲在XML列在一個表中的SQL Server的一些XML數據2005年的SqlServer中查詢在XML列不同的數據2005
記錄1將具有該列中的數據是這樣的:
<ArrayOfThings xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/SomeCompany">
<Things>
<Thing>
<Name>Monkey</Name>
</Thing>
<Thing>
<Name>Lion</Name>
</Thing>
<Thing>
<Name>Shoe</Name>
</Thing>
</Things>
</ArrayOfThings>
記錄2可能有這樣的數據,該列
<ArrayOfThings xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/SomeCompany">
<Things>
<Thing>
<Name>Monkey</Name>
</Thing>
<Thing>
<Name>Elephant</Name>
</Thing>
<Thing>
<Name>Hammer</Name>
</Thing>
<Thing>
<Name>Bucket</Name>
</Thing>
</Things>
</ArrayOfThings>
誰能幫我用什麼語法會想從該表中選擇不同的東西。
返回的結果是這樣的: 猴子 獅子 擦鞋 大象 錘 桶
顯然這不是生產數據:)
安裝腳本:
CREATE TABLE [SomeSchema].[MyTable](
[Id] [int] IDENTITY(1,1) NOT NULL,
[ThingData] [xml] NULL,
CONSTRAINT [PK_Party] PRIMARY KEY CLUSTERED
(
[Id] ASC
)
) ON [PRIMARY]
GO
INSERT INTO [SomeSchema].[MyTable]
([ThingData])
VALUES
(
'<ArrayOfThings xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/SomeCompany">
<Things>
<Thing>
<Name>Monkey</Name>
</Thing>
<Thing>
<Name>Lion</Name>
</Thing>
<Thing>
<Name>Shoe</Name>
</Thing>
</Things>
</ArrayOfThings>
')
GO
INSERT INTO [SomeSchema].[MyTable]
([ThingData])
VALUES
(
'<ArrayOfThings xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/SomeCompany">
<Things>
<Thing>
<Name>Monkey</Name>
</Thing>
<Thing>
<Name>Elephant</Name>
</Thing>
<Thing>
<Name>Hammer</Name>
</Thing>
<Thing>
<Name>Bucket</Name>
</Thing>
</Things>
</ArrayOfThings>
')
GO
並且該選擇將違反表
0123中的列
你希望他們在同一行? – 2010-10-12 14:23:53
不,只是結果集中的那些值 – adev 2010-10-12 21:17:24