相关疑难解决方法(0)

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

SQL离开连接与FROM行上的多个表?

大多数SQL方言都接受以下查询:

SELECT a.foo, b.foo
FROM a, b
WHERE a.x = b.x

SELECT a.foo, b.foo
FROM a
LEFT JOIN b ON a.x = b.x
Run Code Online (Sandbox Code Playgroud)

现在很明显,当您需要外连接时,需要第二种语法.但是在进行内部连接时,为什么我更喜欢第二种语法(反之亦然)?

sql syntax join

245
推荐指数
7
解决办法
25万
查看次数

现实生活中的例子,何时在SQL中使用OUTER/CROSS APPLY

我一直在CROSS / OUTER APPLY和同事一起看,我们正在努力寻找现实生活中使用它们的例子.

我花了很多时间看看我何时应该使用Cross Apply而不是Inner Join?和谷歌搜索但主要(唯一)的例子似乎很奇怪(使用表中的行数来确定从另一个表中选择多少行).

我认为这种情况可能会受益于OUTER APPLY:

联系人表(每个联系人包含1条记录)通讯条目表(每个联系人可以包含n个电话,传真,电子邮件)

但是使用子查询,公共表表达式,OUTER JOINRANK()OUTER APPLY似乎都同样执行.我猜这意味着该方案不适用于APPLY.

请分享一些现实生活中的例子并帮助解释这个功能!

sql sql-server sql-server-2005 sql-server-2008

119
推荐指数
4
解决办法
16万
查看次数

MySQL中JOIN和OUTER JOIN的区别

结果有什么不同:

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

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

sql join left-join outer-join right-join

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

完全外部加入与完全加入

只需使用查询和示例来更好地了解联接.我注意到在SQL Server 2008中,以下两个查询给出了相同的结果:

SELECT * FROM TableA
FULL OUTER JOIN TableB
ON TableA.name = TableB.name
Run Code Online (Sandbox Code Playgroud)
SELECT * FROM TableA
FULL JOIN TableB
ON TableA.name = TableB.name
Run Code Online (Sandbox Code Playgroud)

这些是完全相同的动作产生相同的结果,还是会在更复杂的例子中遇到不同的结果?这只是可互换的术语吗?

sql t-sql join sql-server-2008

72
推荐指数
3
解决办法
15万
查看次数

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


SQL - 如何从右表中找不到左表中的行?

我有两个具有相似列名的表,我需要从左表中返回在右表中找不到的记录?我有一个主键(列),可以帮助我比较两个表.哪个加入是首选?

sql join left-join outer-join

39
推荐指数
3
解决办法
14万
查看次数

如何左外连接c#中的两个DataTable?

我如何保持左外连接(我认为它是左外连接但我不是100%确定)两个数据表具有以下表和条件,同时保留两个表中的所有列?

dtblLeft:

 id   col1   anotherColumn2
 1    1      any2
 2    1      any2
 3    2      any2
 4    3      any2
 5    3      any2
 6    3      any2
 7           any2
Run Code Online (Sandbox Code Playgroud)

dtblRight:

 col1   col2      anotherColumn1
 1      Hi        any1
 2      Bye       any1
 3      Later     any1
 4      Never     any1
Run Code Online (Sandbox Code Playgroud)

dtblJoined:

 id   col1  col2     anotherColumn1     anotherColumn2
 1    1     Hi       any1               any2
 2    1     Hi       any1               any2
 3    2     Bye      any1               any2
 4    3     Later    any1               any2
 5    3     Later    any1               any2
 6    3     Later    any1               any2
 7                                      any2
Run Code Online (Sandbox Code Playgroud)

条件: …

c# linq datatable join

19
推荐指数
1
解决办法
4万
查看次数

左连接和左外连接之间的区别

我想知道mySQL中的LEFT JOIN和LEFT OUTER JOIN是否有任何区别.如果没有差异那么为什么有两种不同的方式呢?

提前致谢...

mysql

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