草庐IT

sql-server-data-tools

全部标签

SQL select for xml explicit——当值为空时需要帮助定义备用结构

我有以下SQL查询,但在明确定义其形状时遇到了问题selecttableName,uqName,col1,col2fromsomeTable我想将结果选择成XML,如下所示。我需要将col1和col2显示为子项,将tableName和uqName显示为属性。如果col1或col2是null,那么我需要指定一个IsNull属性。否则该值被选为文本节点作为Col元素的子元素从上面的SQL返回的一行看起来像这样:ABC如何使用SQLServer2008R2显式定义此XML形状? 最佳答案 declare@Ttable(tableNamev

sql - 在 SQL 中提取 XML 数据 - 交叉应用语句过多

我有一个包含声明详细信息的xml文档:etc.etc.etc.这适用于特定于声明的详细信息:SET@statementId=@xml.value('(Id)[1]','UNIQUEIDENTIFIER');但它需要一个单例,并且只返回第一个值。我需要发票的所有值,而不仅仅是第一个值,因此单例将不起作用。我可以使用像这样的交叉应用语句来获取信息:SELECT@statementIdASSTATEMENT_IDId.value('.','uniqueidentifier')ASINVOICE_IDDate.value('.','smalldatetime')ASINVOICE_DATEDu

连接两个表的查询的 SQL Server "FOR XML"输出

我是SQLServer中“FORXML”功能的新手。我正在使用SQLServer2012。我有两个表,Word和Word_Expansion。示例数据:表[Word]:WordOIDWord-----------1PIPE2WIRE表[Word_Expansion]:WEOIDfk_WordOIDWord_Expansion-----------------------------12COAX22SPEAKERCABLE31CONDUIT现在,我想生成类似于以下内容的XML:WIRESPEAKERCABLEPIPECONDUIT我在制作XMLFOR语句方面做出了各种努力,但我似乎无法理

sql - T-SQL 使用变量从 xml 中检索 sql 属性

我正在尝试从传入所需属性名称的XML变量中检索XML属性。第一个select语句可以很好地检索正确的属性值。但是,当我尝试在SQL变量中设置所需的属性名称时,显示的只是字符串/root/attribs/@id而不是实际值。我尝试了@path变量的多种排列,但都无济于事。我在这里错过了什么?DECLARE@XMLStringXML='';SELECTflags=x.c.value('(/root/attribs/@flags)[1]','nvarchar(50)'),id=x.c.value('(/root/attribs/@id)[1]','nvarchar(50)'),[platfo

sql-server - 用降序值替换 SQL Server 中的 XML 元素

给定一个包含这些内容的XML变量:2828283838我需要将每个/Root/Parent/ItemID值替换为从-1开始的递减数字,然后将每个Child/ItemID替换为其父ItemID元素的值。例如,上面的XML应该转换成这样:-1-1-1-2-2在C#中很容易做到,我很难在SQLServer中获得正确的语法。不幸的是,我必须这样做才能使用遗留系统。 最佳答案 您的XML无效,因此我将其更改为我认为您的意思。您可以分解XML,使用row_number()计算新的ItemID并使用forxmlpath重建它。declare@XM

sql - 为 sp_xml_preparedocument 配置 namespace

我有一个格式如下的RSSxml:我想在SQLServer中用sp_xml_preparedocument解析它。我的问题是“namespce”字段。每个有命名空间的项目中有三个标签,我不知道如何指定它们。我试过这个:EXECsp_xml_preparedocument@hDocOUTPUT,@xmlContent,''但它只解析了第一项而忘记了其余的!有什么想法吗? 最佳答案 您只得到一行的事实与命名空间无关。您在针对@hDoc的openxml查询中有一些错误。可能有一些原因让您仍然使用openxml,但在您显示不适合您的查询之前,

sql-server - 如何将 XML 查询结果保存到文件

我有一个SQL查询,我正在使用ForXMLPath将结果生成为XML。任何人都可以帮助我将XML输出转换为“a.xml”文件并保存在计算机的特定文件夹中吗?也想知道,除了BCP还有什么方法可以实现吗? 最佳答案 您可以尝试使用xp_cmdshell....--ReadyourqueryresultsintoanXMLvariableDECLARE@xmlASXML=(SELECT*FROMYourTableFORXMLPATH)--CasttheXMLvariableintoaVARCHARDECLARE@xmlCharASVARC

xml - 如何使用 F# Data 的 XML 类型提供程序检索 XML 属性 "two nodes deep"?

我想检索比方说(level2name=)的a和b属性level2Name4在(level1name=)level1Name2使用F#Data'sXMLTypeProvider来自以下XML:但是,我无法将level2转换/扩展为map,也无法从那里检索必要的信息:openSystem.Xml.LinqopenFSharp.DatatypemyXmlType=XmlProvider""">letmyXml=myXmlType.Parse("""""")letmyA,myB=myXml.GetLevel1s()|>Seq.filter(funL1->L1.Name="level1Name2

sql - SQL Server 中的 XML 循环

我必须查询XML以提取数据并将其放入列中。这非常有效。但是,我想包含一个循环,因为XML中的结构如下:5A255UnitName5BlueUnitName6Red总是只有一个,但可以有更多...现在,我可以使用以下代码生成列(当知道的数量时):DECLARE@DataXMLSET@Data='FlightNr0AircraftType0UnitName5BlueUnitName6Red';WITHXMLNAMESPACES(DEFAULT'http://www....')SELECT@Data.value('(/BlockOrderMessage/FlightOrder/Flight/

java - Spring Tool Suite 应用程序上下文 xml 错误,即使所有 bean 似乎都按预期工作

我正在一个spring应用程序上下文xml中配置jpa和jpa存储库。如果我同时拥有和然后SpringToolSuite在第1行显示错误Referencedfilecontainserrors(http://www.springframework.org/schema/context/spring-context-4.0.xsd).Formoreinformation,rightclickonthemessageintheProblemsViewandselect"ShowDetails..."点击显示详细信息后,我得到了这个:Theerrorsbelowweredetectedwhe