问题标签 [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 投票
4 回答
1618 浏览

mysql - 为什么这个 LEFT JOIN 会消除另一个表中没有任何内容的记录?

我有一个 MySQL 左连接问题。

我有三个要加入的表。

人表:

学生表:

还有一个事件表:

我要选择的是第 9 年每个学生的名字、姓氏和事件数量。

这是我对查询的最佳尝试:

但是,它会忽略任何没有发生事件的学生,这不是我想要的 - 他们应该显示但计数为 0。如果我删除左连接和计数,那么我会得到所有学生,如我所料。

我可能误解了 left join 但我认为它应该做的,基本上是我想要做的?

谢谢你的帮助,

亚当

0 投票
4 回答
362 浏览

mysql - 将表 1 中的 2 列连接到表 2

您如何将 table1 列引用到表 2 中的 2 列

我创建了一个包含 50 行的表“ State ”

试图在“婚礼”表中关联 (weddingState,contactState)

这是我创建的语句,但它只正确加入了顶部的WeddingState - 似乎并不关心它下面的 INNER Join ......

选择 *

从婚礼

INNER JOIN 状态为 s1 ON 婚礼。WeddingState = s1.StateId //婚姻状态

INNER JOIN 状态为 s2 ON weddings.ContactState = s2.StateId //新娘的联系状态

WHERE 婚礼.weddingid="094829292"

0 投票
8 回答
88058 浏览

sql - 两列性能问题的左外连接

我正在使用类似于以下形式的 SQL 查询:

它要么太慢,要么陷入僵局,因为返回至少需要 4 分钟。如果我将其更改为:

然后它工作正常(尽管没有返回正确的列数)。有什么办法可以加快这个速度吗?

更新:如果我切换后一个查询的最后两行,它会做同样的事情:

更新2: 这些实际上是我加入的观点。不幸的是,它们位于我无法控制的数据库中,因此我无法(轻松)对索引进行任何更改。我倾向于同意这是一个索引问题。我会在接受答案之前稍等片刻,以防有一些我不知道的神奇方法来调整这个查询。否则,我将接受当前答案之一,并尝试找出另一种方法来做我想做的事情。感谢大家到目前为止的帮助。

0 投票
5 回答
4391 浏览

sql-server-2005 - SQL order by 和 left outer join 没有正确的顺序

我有一个视图,它连接两个表并按第一个表排序。除了顺序不正确。它错过了一个偶然的记录,然后在最后,大多数记录按顺序存在,然后在最后,其余记录按顺序存在。所以它有记录,如

我的看法如下。在我加入之前我需要做订单吗?我究竟做错了什么?(我已经获得了这个视图,并且另一个数据库实例中完全相同的视图可以正常工作。)

(编辑)排序字段的类型是 [ID] [int] NOT NULL IDENTITY(1, 1),

0 投票
3 回答
346 浏览

mysql - MySQL 连接查询帮助

基本上我有一个类似以下的mysql查询:

而我需要做的是从帖子表中获取标题,并从投票表中获取当前投票值。

目前,除非发生投票,否则投票不会存储到投票表中。因此,所有票数为 0 的帖子都不在投票表中。

这会导致错误,它试图获取帖子 id = 投票值 id 的标题和投票值。如果投票表中没有任何记录,则值应返回为 NULL 或 0,但此时整个查询返回为 null,因此我什至无法返回标题。

如何在一个查询中解决所有问题?我不想使用多个查询...谢谢:)

0 投票
6 回答
111084 浏览

c# - LINQ 内连接与左连接

使用扩展语法我试图在我拥有的两个列表上使用 LINQ 创建左连接。以下来自 Microsoft 帮助,但我已对其进行了修改以显示宠物列表没有任何元素。我最终得到的是一个包含 0 个元素的列表。我认为这是因为内部连接正在发生。我想要结束的是一个包含 3 个元素(3 个 Person 对象)的列表,其中为缺失的元素填充了空数据。即左连接。这可能吗?

0 投票
2 回答
3916 浏览

linq-to-entities - LINQ to Entities, how to return all records from the Parent table?

I am unable to select all the records from the parent table using Linq to Entities.

This is a simple DB design (image below):

Image Link (Dead Link)

This is the exact output I want using Linq to Entities or Linq to SQL (image below):

Image Link (Dead Link)

When I use Linq to Entities or Linq To Sql, I can only get the records from the child table that has a foreign key relation. I am not able to get the null values as shown above.

I want to have the null values show just like when you use left outer join.

Thanks for any help.

0 投票
6 回答
548 浏览

sql - 优化 SQL 查询

我还能做些什么来优化这个查询?

我正在使用 MySQL

谢谢

0 投票
3 回答
6524 浏览

linq-to-entities - Linq to Entities 如何从父级返回所有记录?

员工表

Employee_ID int
Employee_Name varchar(50)

销售表:

Sales_ID int
Employee_ID int
Sale_Amount 钱

标准 SQL 选择

Select
*
From Employee emp
left outer join
Sales s
on
s.Employee_ID = emp.Employee_ID

标准 SQL 结果(我想要使用 Linq to Entites 的确切结果)

1 Emp1 1 1 150.00
1 Emp1 2 1 500.00
2 Emp2 3 2 250.00
3 Emp3 NULL NULL NULL
4 Emp4 NULL NULL NULL
5 Emp5 4 5 700.00

现在解决 Linq To Entity

Linq To Entities 结果(Employee_ID 3 和 4 在哪里)

1: Emp1: 150.0000
1: Emp1: 500.0000
2: Emp2: 250.0000
5: Emp5: 700.0000

尝试使用具有左外连接的 Linq to Entities:

然后我使用 DefaultIfEmpty 得到这个错误:

LINQ to Entities 无法识别方法 'System.Collections.Generic.IEnumerable 1[m12Model.Sales] DefaultIfEmpty[Sales](System.Collections.Generic.IEnumerable1[m12Model.Sales])' 方法,并且此方法无法转换为存储表达式。

Linq to Entites:不支持 DefaultIfEmpty()。

0 投票
2 回答
13690 浏览

.net - 在包含计数的子查询上使用左连接的 Linq

我很难将 sql 转换为 linq 语法。

我有 2 个表(Category 和 CategoryListing),它们使用 CategoryID 相互引用。我需要获取 Category 表中所有 CategoryID 的列表以及 CategoryListing 表中所有相应匹配项的 CategoryID 计数。如果 CategoryID 不存在于 CategoryListing 中,则仍应返回 CategoryID - 但频率为 0。

以下 sql 查询演示了预期的结果: