Sql server 从SQL中的XML中选择数据
从SQL Server数据库中保存的XML文本中获取某些数据时遇到问题。我的资料如下:Sql server 从SQL中的XML中选择数据,sql-server,xml,Sql Server,Xml,从SQL Server数据库中保存的XML文本中获取某些数据时遇到问题。我的资料如下: 2. SP-CTe-25-05-2017 351000011484798 104 Lote processado 35 2. SP-CTe-25-05-2017 35170623838348000310570000000058731000058731 2017-06-22T21:28:18-03:00 232 雷杰奥:也就是说,这是一个信息时代 您可以定义一个默认名称空间和值来获得如下输出 DECLARE
2.
SP-CTe-25-05-2017
351000011484798
104
Lote processado
35
2.
SP-CTe-25-05-2017
35170623838348000310570000000058731000058731
2017-06-22T21:28:18-03:00
232
雷杰奥:也就是说,这是一个信息时代
您可以定义一个默认名称空间和值来获得如下输出
DECLARE @SampleData AS TABLE
(
XmlValue xml
)
INSERT INTO @SampleData
(
XmlValue
)
VALUES
(N'<retConsReciCTe xmlns="http://www.portalfiscal.inf.br/cte" versao="3.00">
<tpAmb>2</tpAmb>
<verAplic>SP-CTe-25-05-2017</verAplic>
<nRec>351000011484798</nRec>
<cStat>104</cStat>
<xMotivo>Lote processado</xMotivo>
<cUF>35</cUF>
<protCTe versao="3.00">
<infProt>
<tpAmb>2</tpAmb>
<verAplic>SP-CTe-25-05-2017</verAplic>
<chCTe>35170623838348000310570000000058731000058731</chCTe>
<dhRecbto>2017-06-22T21:28:18-03:00</dhRecbto>
<cStat>232</cStat>
<xMotivo>Rejeição: IE do destinatário não informada</xMotivo>
</infProt>
</protCTe>
</retConsReciCTe>')
;WITH XMLNAMESPACES (default 'http://www.portalfiscal.inf.br/cte')
select sd.XmlValue.value('(/retConsReciCTe/@versao)[1]','varchar(20)')
AS Versao
FROM @SampleData sd
你的预期输出是什么?我想为atribute versao拍摄内容。在这种情况下,3.00
Versao
3.00