问题标签 [right-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.
mysql - Issues with mixed join query in MySQL 5.5 though worked in MySQL 4.1.25
This is a bit confusing so bear with me.
I have 3 tables:
tbl ps is used to link records from p to s - p can be combined with more than one 's' record, hence the linking table.
In MySQL 4.1.25, I used the following query to retrieve all the data, including where 'p' didnt have a corresponding 's' record, even if 'p' wasn't linked at all:
This worked fine and correctly returned:
Now, however, the same query in MySQL 5.5 is producing this:
As you can see, any 'p' record that does NOT appear in ps, is returned as a null value. It almost looks as though it may be favoring the right join over everything else.
Any thoughts on what changed here and how I can rectify it?
Unfortunately, the corrected query must work in both versions of MySQL - which is becoming more and more of a pain for me to be honest, but nothing I can do about it. Obviously, efficiency is key as theses tables contain 100's of records (ps contains 1000's) and I need to get the same result set in a little steps as possible.
Thanks for your time folks!
sql - 带有约束列的sql左外连接
这是 SQL,“aal_county_zip”有 2 个邮政编码的条目,而“us_zip”有 15 个邮政编码。要求是获得 15 行,其中只有 2 行具有来自“aal_county_zip”的数据。它的工作方式与普通连接一样。如何更改 SQL/表结构以使其正常工作。我还想添加下面评论的条件。
mysql - mysql三表连接结果空集
您好,我已经加入了三个表,但即使假设有一些结果,它也会返回空结果。这是我的sql
我期待的结果是这样的:
但是我的结果是空的,这是因为第二个临时信息是 0?如果行为空,我如何获得上面的所有信息,那么它可能是空白的,但我需要与它相关的其他信息。
这是我的表架构:
eod_stock:
分红信息:
请你能帮我找出结果吗?
sql - SQL 连接后更新列
我正在使用 Select 和 Right Join SQL 函数将所有数据调用到一个表中。仅当分配表上的 ans_primary = '1' 时才会填充被调用的数据。如果 asn_primary = '1' 那么它将连接两个表的 att_id = att_id 上的所有以下列。
使用的两个表和列如下:
分配(att_id、itm_id、asn_primary)
附件(att_id、att_name、att_type、att_path、att_path2、att_path3)
调用后,我需要能够更新 att_name 列中的所有字段。我不确定在使用 Join 调用后如何更新列。
在调用/加入信息后我需要运行的 SQL 是:
sql - 左连接和右连接如何在关系代数中工作
如果我有两张桌子
然后我做R outer join S
。我试图弄清楚结果。如果我尝试使用 sql 代码,我会这样做:
该查询的结果是:
如果我尝试手动解决它:
比赛3 1
与1 3 3
比赛2 3
与3 0 0
比赛2 0
与- - -
比赛3 3
与3 0 0
比赛1 1
与1 3 3
这使得上面的前 5 行成为该结果。剩下的两行来自右连接。但我不明白的是为什么正确的连接会产生
因为在左边加入2 0
不匹配任何东西,但b
列被保留并且 0 在那里。
但是在右连接中,2 2 3
and2 2 0
与任何内容都不匹配,但 b 列变成了空值。不应该像左连接一样保留 b 列吗?
谁能解释这里发生了什么?
谢谢。
sql - SQL Oracle 中的自联接;为什么右外连接不能保留表的所有值
我不明白为什么右外连接(下面的例子)没有像左外连接那样给出表的完整数据集;因为外连接总是保留对应表的行。
创建表
create table join_test
(id number unique not null, name varchar2(10), department varchar2(10));
填充表
select * from join_test;
内部联接
select j1.name, j1.department
from join_test j1 join join_test j2
on(j1.department=j2.department and j1.name<>j2.name);
左外连接
select j1.name, j1.department
from join_test j1 left join join_test j2
on(j1.department=j2.department and j1.name<>j2.name)
右外连接
select j1.name, j1.department
from join_test j1 right join join_test j2
on(j1.department=j2.department and j1.name<>j2.name)
将选择列表更改为 j2
select j2.name, j2.department
from join_test j1 right join join_test j2
on(j1.department=j2.department and j1.name<>j2.name)
mysql - 如何组合多个不同行的 MySQL 表?
我需要从几个定期更新库存的仓库中汇总数量。这些文件会自动加载到我的 MySQL 数据库中的表中,但有时一个仓库的文件可能比其他仓库多或少。我需要将它们全部添加以确定整个网络可用的总量。
我的想法是:
等通过所有加入的仓库:
等通过所有仓库
我不能使用 LEFT JOIN 或 RIGHT JOIN,因为有时一个仓库可能缺少条目,有时另一个可能。如果一个分支的文件中缺少一个 sku,我希望仍然将其他分支添加在一起,并且只获得一个 NULL,它将由 SELECT 中的函数转换为 0。当我测试不同的连接解决方案时,我似乎也得到了笛卡尔行数,这让我更加困惑。非常感谢任何指导。
稍微澄清一下:我们需要加入 17 个表。我们并不真正关心列的总和,而是更关心单个值。例如,一个表可能表示项目 a、b、c、d 的列表,并列出数量为 1、2、3、4。我们会从几个不同的仓库中获得该表,并且我们需要找到整个网络的总数。如果四个仓库具有这些值,我们希望看到 a、b、c、d 和 4、8、12、16 作为可用总数的值。
sql-server - SQL:左连接的结果左连接左连接左/右连接
当您有 3 个以上的表时,例如 table1 [1a,1b]、table2[2a,2b] 和 table3 [3a,3b]
如果我有:
结果,首先我将拥有每个 table1.id
那么table2与table1匹配的所有元组,以及table1中在table2中没有匹配的元组在table2.id中都是空的。
假设这些是匹配项*
在这里告诉我我是否弄错了
然后,左连接和右连接与 table3 有什么关系?:/
编辑:我忘了,3a 将与 2a 和 2b 匹配,而 3b 则两者都不匹配。
sql - 为什么这个查询不能正常工作?
我的MasterSales
桌子看起来像这样
我的Category
桌子看起来像这样
我的查询如下所示:
我想要的结果是这样的:
但我得到的结果是这样的:
我已经尝试过使用RIGHT JOIN
而不是LEFT JOIN
切换 table onFROM
子句,但结果仍然相同。谁能帮我解释一下为什么它不能正常工作?
PS:我使用的是 SQL Server 2005(如果重要的话)
sql - SQL INNER JOIN 不重复
获取下一张表:
- Column1 - OrderID - 来自 Column2 的客户的最早订单
- Column2 - CustomerID - 来自 Column1 订单的客户
- Column3 - OrderID -来自 Column2 且未出现在 Column1 中的所有*Other* 客户订单
这是我的查询,我正在寻找一种应用上述规则的方法:
提前致谢