问题标签 [left-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.

0 投票
3 回答
2804 浏览

mysql - 帮我解决这个 MySql 完全外部联接(或联合)

这来自将 MSSQL 转换为 MySql。以下是我试图开始工作的代码:

假设任何变量已经存在。这在“As SharedDataPerPath”部分中断,所以我猜我给select语句加上别名,以便您可以像MySQL不支持表一样访问它?如果表模式有帮助,请回复评论,我会将其添加到问题中。

提前致谢!

0 投票
3 回答
13946 浏览

sql - LINQ 中的 JOIN 和 LEFT JOIN 等效项

我正在使用以下 SQL 查询:

我不确定如何在 LINQ 中实现 JOIN。我所有的表都有外键关系。

0 投票
7 回答
71561 浏览

sql - SQL LEFT JOIN 返回 0 而不是 NULL

我想加入两个表,计算每种类型的记录数。如果左表中没有该类型的记录,我希望返回 0,而不是 null。

我怎样才能做到这一点?

0 投票
1 回答
6677 浏览

mysql - Empty Rows in MySQL SELECT with LEFT JOIN

I have three tables called: users, facilities, and staff_facilities.

users contains average user data, the most important fields in my case being users.id, users.first, and users.last.

facilities also contains a fair amount of data, but none of it is necessarily pertinent to this example except facilities.id.

staff_facilties consists of staff_facilities.id (int,auto_inc,NOT NULL),staff_facilities.users_id (int,NOT NULL), and staff_faciltities.facilities_id (int,NOT NULL). (That's a mouthful!)

staff_facilities references the ids for the other two tables, and we are calling this table to look up users' facilities and facilities' users.

This is my select query in PHP:

This query works great on our development server, but when I drop it into the client's production environment often times blank rows appear in the results set. Our development server is using the replicated tables and data that already exist on the client's production server, but the hardware and software vary quite a bit.

These rows are devoid of any information, including the three id fields that require NOT NULL values to be entered into the database. Running the query through the MySQL management tools on the backend returns the same results. Searching the table for NULL fields has not turned up anything.

The other strange thing is that the number of empty rows is changing based on the varying results caused by the WHERE clause id check. It's usually around one to three empty rows, but they are consistent when using the same parameter.

I've many times dealt with the returning of nearly duplicate rows due to LEFT JOINS, but I've never had this happen before. As far as displaying the information goes, I can easily hide it from the end user. My concern is primarily that this problem will be compounded as time passes and the number of records grows larger. As it sits, this system has just been installed, and we already have 2000+ records in the staff_facilities table.

Any insight or direction would be appreciated. I can provide further more detailed examples and information as well.

0 投票
2 回答
213 浏览

mysql - mysql join 快把我逼疯了!

所以我问了几个关于执行连接的问题并且得到了很好的答案,但我仍然完全被难住了。

我有 3 张桌子。让我们称它们为table-b、table-d 和table-e。
表 b 和表 d 共享一个称为 p-id 的列。
表 e 和表 b 共享一个名为 ev-id 的列。
Table-e 也有一个名为 date 的列。
Table-b 还有一个唯一的 id 列,称为 u-id。

我想编写一个在以下条件下返回 u-id 的查询:
1)限制为 table-e.date 中的某个值。
2) 其中 table-bp-id 与 table-dp-id 不匹配。

我想我需要在 e-id 列上内连接 table-b 和 table-e。然后我认为我需要在 p-id 为空的 table-d 和 table-b 上执行左连接。
我的问题是我不知道编写此查询的语法。我知道如何编写多个内连接,也知道如何编写左连接。我如何将两者结合起来?

非常感谢所有帮助我的人。我(显然!)是数据库的新手,并且正在努力解决所有问题!

0 投票
1 回答
13372 浏览

c# - 如果联接中有多个字段,您如何在 Linq 中离开联接?

我之前问过一个问题,为什么 Linq 中的左连接不能使用已定义的关系;到目前为止,我还没有得到满意的答复。

现在,在平行轨道上,我已经接受我需要使用join关键字,就好像我的对象之间没有定义任何关系一样,我正在尝试找出如何在 Linq 中表达我的查询。麻烦的是,它是多个表之间的左连接的集合,连接中涉及多个字段。没有办法简化这一点,所以这里是 SQL 的所有未加掩饰的荣耀:

(仅供参考,如果它有助于理解我正在尝试做的事情:我正在尝试确定是否有任何TreatmentPlanDetail记录,Patient而授权Payer需要为此开具处方ServiceType,但要么没有ServicePerscription记录,要么已经过期。 )

现在,这是我的 C# 代码的样子:

糟糕,无法编译!出于某种原因(我想解释一下)我不能在等值连接中使用那个字面布尔值!好吧,我将其省略,稍后过滤掉“RequiresPrescription”的东西......

...现在它编译了 - 但是当我运行时,我在这一行得到一个“未设置对象引用”异常。 呃! 当然里面有一个空值!如果不允许您引用右侧的对象,那么您还应该如何与左连接进行比较,这可能是空的?

那么,您应该如何使用多个字段进行左连接?

0 投票
2 回答
662 浏览

linq - 如何将这些 LINQ 连接转换为 LEFT OUTER 连接?

所以,我对 LINQ to SQL 还是很陌生,我需要帮助弄清楚如何将它变成左外连接,而不是内连接。

从上面的查询中,我希望从 Agencies 表中获取所有代理,然后如果不存在记录,则右侧的记录(EnterpriseID、CorrectedDate 等)可以为空,等等。

我相当确定我需要使用 SelectMany,但我可以使用一些指导将这些连接转换为 LEFT OUTER JOINS,所以我有一个所有机构的列表,然后他们可能的记录在右边。

0 投票
4 回答
2646 浏览

sql-server - Where中的条件和Join中的条件之间的区别

谁能向我解释为什么以下两个查询会产生不同的结果?

谢谢。

0 投票
3 回答
13190 浏览

sql - TSQL左连接与多个右手行

当您在 TSQL (MSSQL SERVER) 中执行左连接时,如果右侧有多行,是否可以保证哪一行将与您的查询一起返回?

我正在尝试使用它来利用右表上的排序。

所以

我希望根据我的排序检索表中的所有 ColA,以及我的左连接的 ColA 结果集中的所有第一行。

语言或服务器对此是否有任何保证?

0 投票
4 回答
5267 浏览

ms-access - 由于“不同”,访问查询备注字段截断

我在没有截断 NotesTbl 中的注释字段或返回重复条目的情况下运行查询时遇到问题。

UID 对于 AccessTbl 不是唯一的。当我遗漏“不同”的注释时,将返回多次,因为我在非明显条件下加入 AccessTbl。当我使用 distict 时,note 字段被截断,因为它是一个备忘录字段。

这是我的查询: