问题标签 [outer-join]
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.
ruby-on-rails-3 - Rails3:如何使用关系代数来替换 SQL 构造,如 NOT 和 OUTER JOIN
有两种模型 Post 和 Comment。我应该得到所有没有带有特定标签的评论的帖子。我怎样才能使用新的 Rails 3 特性来做到这一点,比如关系代数(arel)。
SQL 解决方案应该是这样的:
c# - LINQ 中的 C# 外部应用
如何在 LINQ 中实现外部应用?我有点问题。
这是我正在使用的 SQL 查询。
nhibernate - nhibernate在多对一实体上生成左外连接
我正在使用 nHibernate 2.1.2 并意识到 nhibernate 将在嵌套的多对一实体上生成左外连接。似乎开始在从实体组织开始的第三个嵌套注释开始生成左外连接。我在映射文件中设置了以下强制使用内连接,我在映射文件中遗漏了什么吗?真的希望有人能给我一个提示。感谢任何帮助!
示例实体和关系: 销售记录 - 员工 - 组织
休眠生成:
销售.hbm.xml
员工.hbm.xml
sql - SQL 中 RIGHT & LEFT JOIN 与 RIGHT & LEFT OUTER JOIN 之间的区别
结果有什么区别:
- 右连接和右外连接
- 左连接和左外连接?
你能通过一些例子来解释一下吗?
sql - oracle外连接短手与上
作品:
不工作
迁移到 ANSI 连接是一种选择,但却是一项艰苦的选择。这段代码应该在很多地方更改,并且有很多连接。我想让这个语法正确并继续前进。
是否可以?
sql - 2 SQL 语句中的右外连接
我在理解一个非常简单但有趣的查询时遇到了问题,该查询涉及带有“非顺序”表达式的 2 个右外连接。这是查询:
以下是表格:
以下是一些行:
注意:查询select * from C right outer join A on A.F1 = C.F1 right outer join B on B.F1 = C.F1; 连接表达式都引用表 C。
查询返回(列然后行)
我期望(在我对 SQL 的一点了解中)
SQL(在 Microsoft SQL 和 MySQL 上测试)获得这些值的逻辑顺序是什么。
在我的“执行”序列中,我坐在表 A 上的值 A、null(对于 B)、C、null(对于 D)和在表 B 中,null(对于 A)、B、C、D 在“产品”之前与 C (B,C,D) 合并。
Gawie PS:我使用 MySQL 和 Microsoft SQL 2008 对此进行了测试……结果相同。
mysql - 多表外连接问题
我可能在这里有错误的一端,但我认为外连接应该给我(比如说)左表中的所有记录,以及来自右表的匹配结果和空值没有匹配的地方。
我有 3 个表需要查询。Person 和 Detail 具有直接的 1:1 关系。第三张表是时间。这存储了每周、每人、每个项目的工作时间。我需要计算每个人的周数。
以下给出了每个用户放下时间的周数,只要他们放下 > 1 周
即这将显示已进入时间的 80/100 人。
但是我需要看看那20个人还没有放下时间,所以我尝试了以下outer join
但是,这给了我与第一个查询完全相同的结果。
编辑:我刚刚发现了问题的一部分。在伪代码的原始版本中,没有按日期闪烁。我刚刚发现删除日期过滤器查询的行为更符合预期 - 尽管太慢而无法使用,而且日期很重要。
mysql - 在 MySQL 中使用右手约束创建左外连接
根据https://stackoverflow.com/questions/3264227/relations-with-multiple-keys-in-doctrine-1-2,我有两张表(因为我无法让它在 Doctrine 中工作)我' m 试图以 MySQL 视图的形式加入:
部分:
- part_id
- product_id
- part_type_id
- part_short_code
- ...
部分翻译:
- part_type_id
- part_short_code
- 语言标识
- 国际化名称
- ...
关于 part_type_id 和 part_short_code 必须在表中匹配的约束。
这因以下事实而变得复杂:
- 右手边的表(part_translation)可能没有对应的行(因此是左连接)
- 右侧表仅在 part_short_code != '' 和 language_id = 1 时才有效加入
我有一个工作查询:
SELECT * from part LEFT OUTER JOIN (SELECT * FROM part_translation WHERE language_id=1 AND part_short_code != '') as part_data_uk USING (part_type_id, part_short_code)
但是a)它很慢(可能是由于子查询)和b)我无法将其转换为视图,因为我收到错误“#1349 - View's SELECT contains a subquery in the FROM 子句”
我无法弄清楚如何将约束添加到右侧表而不导致联接充当内部联接并处理右侧为空的所有行。
谁能告诉我如何优化/改进此查询以摆脱子查询并使其在视图中可用?
使用 MySQL 5.0.45,FWIW。
谢谢,理查德
mysql - 在 MySQL 中模拟完全外连接的有效方法?
根据谷歌搜索:由于 MySQL 不支持完全外连接,因此可以通过 union 和/或 union all 来模拟。但这两者要么删除真正的重复项,要么显示虚假的重复项。
什么是正确有效的方法?
这个问题似乎很相关,但无法得到答案。
sql - SQL 查询 OUTER JOIN 的帮助?
我有两张这样的桌子。
表格1
表2
我想加入他们,所以我有类似的东西
问题是并非所有代码都存在于两个表中,所以如果代码不存在于其中一个表中,它的值应该为空。最后我想要这样的东西
我认为使用 LEFT 或 RIGHT JOIN 是不可能的……或者它可能是……有什么想法吗?谢谢=)
已编辑:我尝试了 FULL OUTER JOIN 但结果类似于
答案!!!:我找到了@Tobiasopdenbrouw 的答案: