问题标签 [outer-apply]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1404 浏览

mysql - SQL Server 中外部应用的替代方法

我在使用外部应用的 SQL 服务器中有一个查询。现在我想对其进行转换,以便查询也可以在 SQL 服务器和 MySQL 上运行。

我必须隐藏这个查询,以便我可以在两个数据库上运行。

这是我的桌子

这是我在 SQL Server 中执行的查询。

这是 SQL 服务器中的输出。

车辆编号 地点
MH14 AA 1111 啊啊啊
MH12 BB 2222 ccc
MH13 cc 3333 eee
MH42 dd 4444 ggg

我想在 MySQL 中执行这个。我想要上面提到的相同输出。

0 投票
1 回答
2709 浏览

mysql - 外部应用的替代方案

这是我的桌子

这是我在 SQL Server 中执行的查询。

这是 SQL 服务器中的输出。

我想在 MySQL 中执行这个。我想要上面提到的相同输出。

0 投票
2 回答
391 浏览

sql - Outer Apply 将 2 行合并为 1 行 2 列

我正在尝试编写一个查询,将多个外部应用连接结果组合成单行数据。我玩过一些 CTE,但我无法解决这个问题。

我想让多个连接结果显示为 1 行,第二个连接结果显示在第二列

在此处输入图像描述

0 投票
2 回答
1956 浏览

sql-server - 从多个 case 语句中返回 1 行

在下面带有 case 语句的端口中的以下查询中,我试图弄清楚当 SegmentType 不匹配时如何不返回空值。

QRSubscriberTag、MLKSubscriberTag、QTMSubscriber Tag,实际上是一个标签表,由它们的 SegID 和与 SegID 关联的 segmentType 唯一标识。我将外部应用与调用 FOR XML PATH('') 的子查询一起使用,以将与特定标签相关的标签连接在一起。

这种方法的缺陷是,当标签不是例如 QRSubscriberTag 时,会在 QRSubscriberTag 列中创建一个空记录。

我想看到的是 1 行中的所有数据

下面是我的代码

编辑:完整结果集 注意:QRSubscriber、MLKSubscriber 和 QTMSubscriber 标签都有唯一的 SegID。

0 投票
2 回答
39 浏览

sql - SQL Server JOIN/APPLY 查询

我应该使用什么连接来根据下面的虚拟表获得所需的输出

明细表

列表日期为 2016 年 10 月 1 日至 2016 年 10 月 15 日

我的查询所需的输出

0 投票
3 回答
2784 浏览

sql-server - 不带子查询的 OUTER 应用

我浏览了一篇关于CROSS APPLYOUTER APPLYSQL Server下表用于说明两者。

员工表:

部门表:

我知道这OUTER APPLY类似于LEFT OUTER JOIN.但是当我OUTER APPLY在下表之间应用时,

我得到以下结果(与INNER JOIN结果相同)

当我OUTER APPLY 在如下表之间应用时(right table作为子查询)。

我得到以下结果(与LEFT OUTER JOIN结果相同)

有人可以解释为什么这两个查询给出的不同outputs吗?

0 投票
1 回答
746 浏览

python - SQLAlchemy 中的外部应用

我想使用 SQLAlchemy 编写如下 SQL Server 的外部应用查询。

FX 表中可能没有 price 表中日期的对应行,所以我需要使用 to OUTER APPLY 来获取 FX 表中每个日期的最后一行。

表的简要背景:

  • PRICE 表是一个包含 EffectiveDate、Currency 和 Close_ 列的时间序列。EffectiveDate 是主键。
  • FX 表具有 FromCurrCode、ToCurrCode、ExRateDate 和 Rate 列。主键是 (FromCurrCode, ToCurrCode, ExRateDate)
  • 我的用例是加入 PRICE 和 FX 表以获取美元价格。但是,对于 PRICE 表中给定的 EffectiveDate,FX 表中可能没有该日期的行。因此,不能使用 FX.ExRateDate = PRICE.EffectiveDate 直接连接表。要解决此问题,我需要使用 OUTER APPLY 查找 FX 表中 FX.ExRateDate 最接近 PRICE.EffectiveDate 的最后一行

似乎 SQLAlchemy 不支持外部应用表达式。我看了一下Custom SQL Constructs and Compilation Extension。但我不确定如何创建外部应用的自定义构造。你有例子吗?

我想一种解决方法是用外部联接替换外部应用。如果您可以提供查询可以在不使用外部应用的情况下产生相同的结果,那也可以解决我的问题。

谢谢

0 投票
3 回答
90 浏览

sql - 每天获取最新条目/SQL 优化

给定以下数据库表,该表记录不同对象(id)的事件(状态)及其时间戳:

我想使用普通 SQL(MS SQL)得到一个结果表,如下所示:

其中“状态”是一天中的最新条目,因为已记录了该对象的至少一个事件。

我目前的解决方案是像这样使用“外部应用”和“TOP(1)”:

据我了解,这个外部应用命令的工作方式如下:

但是我面临性能问题,因此我认为这个解决方案是不够的。任何建议如何解决这个问题或如何优化 sql?

0 投票
1 回答
1189 浏览

sql - 交叉应用的聚合函数中的外列引用

在我的查询中,我OUTER APPLY用于在不同的情况下获取员工人数,例如

  1. 一段时间内每天加入的员工人数
  2. 期间每天离职员工人数
  3. 一段时间内每天离职的员工人数......等

预期输出 ( From:2017-01-10 to 2017-01-12) 是

以下是我的查询

但是在执行我的查询时,出现以下错误。

消息 8124,级别 16,状态 1,第 18 行在包含外部引用的聚合表达式中指定了多个列。如果要聚合的表达式包含外部引用,则该外部引用必须是表达式中引用的唯一列。

这里的列[JOIN_COUNT]只产生错误,没有这个列,查询正在工作。但我有更多列待添加[JOIN_COUNT](例如 Resigned_Count,...等)

0 投票
2 回答
91 浏览

sql - 将结果插入新表

是否可以将以下查询的结果插入到新表中

作为独立它可以工作,但我无法将INSERT这些结果放入新表中。请指导。谢谢