我的表中存储了XML。该表具有ID类型为int的列和值类型为XML的列。我正在使用SQL Server 2012。
XML看起来像这样:
<?xml version="1.0" encoding="utf-16"?> <Weather> <Forecast> <Description>sky is clear</Description> <Date>6.9.2013 23:50:36</Date> <MinTemp>13</MinTemp> <MaxTemp>13</MaxTemp> <Pressure>995</Pressure> <Humidity>68</Humidity> </Forecast> </Weather>
该XML最多可以包含Forecast部分。我如何用简单的SELECT语句获取例如Humidity值?
我一直在尝试在这里找到的多个Thin,但是我一直得到NULL,所以这就是我问这个问题的原因。请帮忙…
尝试这样:-
select columnname from MyTable where columnname.value('(/Weather/Forecast)[1]', 'varchar(max)') like 'StringToSearchFor'
或如此链接中所建议的那样:-
SELECT [xmlField].value('(/Weather//Forecast/Description/node())[1]', 'nvarchar(max)') as columname FROM [myTable]