标签: outer-join

4506
推荐指数
24
解决办法
228万
查看次数

INNER JOIN,LEFT JOIN,RIGHT JOIN和FULL JOIN之间有什么区别?

什么之间的区别INNER JOIN,LEFT JOIN,RIGHT JOINFULL JOINMySQL的

mysql sql join inner-join outer-join

1602
推荐指数
3
解决办法
136万
查看次数

1514
推荐指数
12
解决办法
146万
查看次数

如何在MySQL中进行全面的连接?

我想在MySQL中进行全外连接.这可能吗?MySQL是否支持Full Outer Join?

mysql sql join outer-join full-outer-join

614
推荐指数
6
解决办法
63万
查看次数

LINQ - 全面加入

我列出了人员的姓名和名字,以及人员姓名和姓氏的清单.有些人没有名字,有些人没有姓氏; 我想在两个列表上进行完全外连接.

所以以下列表:

ID  FirstName
--  ---------
 1  John
 2  Sue

ID  LastName
--  --------
 1  Doe
 3  Smith
Run Code Online (Sandbox Code Playgroud)

应该产生:

ID  FirstName  LastName
--  ---------  --------
 1  John       Doe
 2  Sue
 3             Smith
Run Code Online (Sandbox Code Playgroud)

我是LINQ的新手(如果我是跛脚的话,请原谅我)并找到了很多"LINQ Outer Joins"的解决方案,这些解决方案看起来非常相似,但实际上似乎是留下了外部联接.

到目前为止,我的尝试是这样的:

private void OuterJoinTest()
{
    List<FirstName> firstNames = new List<FirstName>();
    firstNames.Add(new FirstName { ID = 1, Name = "John" });
    firstNames.Add(new FirstName { ID = 2, Name = "Sue" });

    List<LastName> lastNames = new List<LastName>();
    lastNames.Add(new LastName { ID = 1, Name = "Doe" …
Run Code Online (Sandbox Code Playgroud)

.net c# linq outer-join full-outer-join

184
推荐指数
7
解决办法
11万
查看次数

Oracle"(+)"运算符

我正在检查一些旧的SQL语句,以便记录它们并可能增强它们.

DBMS是Oracle

我不明白这样的陈述:

select ...
from a,b
where a.id=b.id(+)
Run Code Online (Sandbox Code Playgroud)

我对(+)操作员感到困惑,并且无法在任何论坛上得到它...(在引号内搜索+也不起作用).

无论如何,我使用了SQLDeveloper的"解释计划",我得到了一个输出说HASH JOIN, RIGHT OUTER,等等.

如果我(+)在查询结束时删除运算符会有什么不同吗?数据库是否必须满足某些条件((+)如有一些索引等)才可以使用?如果你能给我一个简单的理解,或者我能读到的一些好的链接,那将会非常有帮助.

谢谢!

sql oracle join outer-join

145
推荐指数
4
解决办法
21万
查看次数

LINQ to SQL - 具有多个连接条件的左外连接

我有以下SQL,我试图将其转换为LINQ:

SELECT f.value
FROM period as p 
LEFT OUTER JOIN facts AS f ON p.id = f.periodid AND f.otherid = 17
WHERE p.companyid = 100
Run Code Online (Sandbox Code Playgroud)

我已经看到了左外连接的典型实现(即into x from y in x.DefaultIfEmpty()等),但我不确定如何引入其他连接条件(AND f.otherid = 17)

编辑

为什么AND f.otherid = 17条件是JOIN的一部分而不是WHERE子句?因为f某些行可能不存在,我仍然希望包含这些行.如果条件在WHERE子句中应用,在JOIN之后 - 那么我没有得到我想要的行为.

不幸的是:

from p in context.Periods
join f in context.Facts on p.id equals f.periodid into fg
from fgi in fg.DefaultIfEmpty()
where p.companyid == 100 && fgi.otherid == 17
select f.value
Run Code Online (Sandbox Code Playgroud)

似乎等同于:

SELECT …
Run Code Online (Sandbox Code Playgroud)

c# sql linq outer-join linq-to-sql

144
推荐指数
4
解决办法
14万
查看次数

MySQL中JOIN和OUTER JOIN的区别

结果有什么不同:

  1. 正确的加入和正确的外部联接
  2. LEFT JOIN和LEFT OUTER JOIN?

你能通过一些例子解释一下吗?

sql join left-join outer-join right-join

87
推荐指数
4
解决办法
9万
查看次数

前1名左连接

鉴于下面的查询,dps_markers中可能有多行具有相同的标记键,但我们只想加入第一行.如果我接受此查询并删除顶部1和ORDER BY我得到一个mbg.marker_value的值但是按原样运行它总是返回null

SELECT u.id, mbg.marker_value 
FROM dps_user u
LEFT JOIN 
    (SELECT TOP 1 m.marker_value, um.profile_id
     FROM dps_usr_markers um (NOLOCK)
         INNER JOIN dps_markers m (NOLOCK) 
             ON m.marker_id= um.marker_id AND 
                m.marker_key = 'moneyBackGuaranteeLength'
     ORDER BY m.creation_date
    ) MBG ON MBG.profile_id=u.id 
WHERE u.id = 'u162231993'
Run Code Online (Sandbox Code Playgroud)

sql-server outer-join

85
推荐指数
2
解决办法
10万
查看次数

57
推荐指数
2
解决办法
2万
查看次数