当前位置: 首页 > 面试题库 >

其他数据库产品中是否有等效于MS SQL'FOR XML PATH'的产品?

乜元魁
2023-03-14
问题内容

我目前正在使用Microsoft的FOR XML PATH功能以XML格式从MS SQLServer中提取数据。我真的很喜欢该功能,但是对于使用供应商特定的功能总是感到不舒服。

其他主要数据库供应商有没有类似之处?

编辑

让我更详细地介绍我要寻找的功能类型

在MS SQL中,您可以使用此查询

SELECT so.id AS '@Id',
       so.Code AS '@Code',  
       cu.Code AS 'Customer/@Code',
       cu.Name AS 'Customer/@Name',
       (SELECT Item_Num AS '@Item',
                pa.Code AS '@PartCode'
        FROM tblSalesItem si
            LEFT JOIN tblPart pa ON pa.Id = si.Part_Id
        WHERE si.SalesOrder_ID = so.Id 
        FOR XML PATH('SalesItem') , type) 
FROM tblSalesOrder so
    JOIN tblCustomer cu ON so.customer_id = cu.ID
FOR XML PATH('SalesOrder'), ROOT('SalesOrders')

生成此XML

<SalesOrders>
  <SalesOrder Id="13" Code="C1002     ">
    <Customer Code="ROBERTS   " Name="Roberts Equipment  Inc." />
    <SalesItem Item="1" PartCode="FP-0001" />
    <SalesItem Item="2" PartCode="FP-0003" />
  </SalesOrder>
  <SalesOrder Id="15" Code="C1004     ">
    <Customer Code="EXBEL-LIFTS" Name="Exbel Lifts Inc." />
    <SalesItem Item="1" />
  </SalesOrder>
</SalesOrders>

我可以逐列控制元素和属性的使用。我可以创建元素的属性以将相关列分组在一起。我可以使用子查询来生成嵌套元素。您甚至可以使用返回XML的函数来生成任意深度的树。


问题答案:

FOR XML PATH不在ANSI SQL-92标准中,因此将取决于各个供应商。我不知道在Oracle或MySQL中有任何等效功能。



 类似资料:
  • 我对连接没有太多经验,下面的查询结果不正确。我有一个名为products的表,希望检查表product\u links中是否有记录。我只想获取product\u链接中没有行的项目列表。 当我运行下面的查询时,我只得到一行。有什么建议吗?谷歌帮不了我,或者我用错误的关键词搜索。

  • SOAR sqlcheck pt-query-advisor SQL Advisor Inception sqlautoreview 启发式建议 ✔️ ✔️ ✔️ ❌ ✔️ ✔️ 索引建议 ✔️ ❌ ❌ ✔️ ❌ ✔️ 查询重写 ✔️ ❌ ❌ ❌ ❌ ❌ 执行计划展示 ✔️ ❌ ❌ ❌ ❌ ❌ Profiling ✔️ ❌ ❌ ❌ ❌ ❌ Trace ✔️ ❌ ❌ ❌ ❌ ❌ SQL在线执行 ❌

  • 本文向大家介绍用户为什么选择你的产品,你的产品相比其他竞品有什么优势?相关面试题,主要包含被问及用户为什么选择你的产品,你的产品相比其他竞品有什么优势?时的应答技巧和注意事项,需要的朋友参考一下 考察竞品分析能力以及对自己产品的了解程度。 首先,需要明确市场上,你的竞品有哪些,列举一些主要的竞争对手;其次,分析自己产品主要的特色和其他竞品的区别(用户体验、需求、场景、业务模式等);最后,归纳总结产

  • 我正在尝试为函数编写一个代码段。php文件,该文件仅显示所选变体的一个价格,因此忽略了在单个产品页面上随变体价格一起显示的价格范围。我正在使用以下代码: 问题是,例如,当您有两个单一产品的变体,而其中一个缺货时,此脚本会在单一产品页面上隐藏剩余变体的价格。我在想,也许每个产品都有一些可用的变体,并使用IF来使用标准的单一产品模板来显示它们。或者你有更好的办法解决这个问题?

  • 在我深入这个兔子洞之前。。。 我有一个类别的产品,基本上是一个选择的4个其他产品。它可以是所选产品的任意组合。定价基于这些产品的正常价格。 到目前为止我所做的 通过普通属性接口控制。管理员输入一个属性,其值为项目类别,即 结果是与类别中的产品组合相关。此产品将是产品中类别中4个选项中的任意/全部选项。 我在函数中也有一个函数。php查询具有此set属性的所有产品,并构建一个整洁的id/title/

  • 问题内容: 使用jQuery之类的强大框架,似乎有可能在客户端构建完整的应用程序逻辑。这与将客户端应用程序构建为本机程序非常相似。 现在,假设此客户端应用程序需要访问远程数据库。通常的解决方案似乎涉及Ajax / PHP / MySQL层。 在我看来,不再需要PHP层。浏览器应用程序负责所有逻辑和用户界面。 然后的问题是:是否不应该存在一个仅希望接受HTTP请求并返回XML结果的(希望健壮且安全的