TER in语句,其中as不添加它也返回相同的输出。前两个是MSSQL查询,因此是完全外部联接。OP然后在下面描述了两个MySQL查询,它们呈现相同的输出,并询问向查询添加OUTER有什么好处。@Ben Swinburne-所有都是MySQL语句。为了更好

TER in语句,其中as不添加它也返回相同的输出。前两个是MSSQL查询,因此是完全外部联接。OP然后在下面描述了两个MySQL查询,它们呈现相同的输出,并询问向查询添加OUTER有什么好处。@Ben Swinburne-所有都是MySQL语句。为了更好,mysql,Mysql,TER in语句,其中as不添加它也返回相同的输出。前两个是MSSQL查询,因此是完全外部联接。OP然后在下面描述了两个MySQL查询,它们呈现相同的输出,并询问向查询添加OUTER有什么好处。@Ben Swinburne-所有都是MySQL语句。为了更好地理解这个概念,我尝试了所有的语句。你的意思是说添加where子句将对结果产生影响。你能不能用简单的话告诉我y和什么时候我们应该在我的语句中添加OUTER关键字。左外连接是一种特殊的外连接。与内部联接类似,外部联接组合(联接)存储在两个不同表中


TER in语句,其中as不添加它也返回相同的输出。前两个是MSSQL查询,因此是完全外部联接。OP然后在下面描述了两个MySQL查询,它们呈现相同的输出,并询问向查询添加OUTER有什么好处。@Ben Swinburne-所有都是MySQL语句。为了更好地理解这个概念,我尝试了所有的语句。你的意思是说添加where子句将对结果产生影响。你能不能用简单的话告诉我y和什么时候我们应该在我的语句中添加OUTER关键字。左外连接是一种特殊的外连接。与内部联接类似,外部联接组合(联接)存储在两个不同表中的匹配行。此外,外部联接还将引用表中不匹配的行添加到结果集中。对于左外部联接,这意味着当左表中有一行不能与右表中的任何行组合时(根据联接条件),MySQL…
left-join
left-outer-join
是彼此的别名。它们是一样的。如果您愿意的话,为了您自己的利益,我只想使用
OUTER
来澄清一下。我喜欢总是使用
外部
内部
,这样我就可以快速查看并看到我做了什么。@Stephanie-g8!这就是我需要的答案。是的,正如手册所说,OUTER提供了ODBC连接。最后,
OUTER
正如上面所说的@user182630,不能单独使用
FULL-OUTER-JOIN
在某些SQL语言中有效,但在MySQL中不可用。这就是为什么您的第一个查询都出错的原因。您的意思是说添加where子句将对结果产生影响。你能不能用简单的话告诉我y和什么时候我们应该在我的语句中添加OUTER关键字。左外连接是一种特殊的外连接。与内部联接类似,外部联接组合(联接)存储在两个不同表中的匹配行。此外,外部联接还将引用表中不匹配的行添加到结果集中。对于左外部联接,这意味着当左表中有一行不能与右表中的任何行组合时(根据联接条件),MySQL…
left-join
left-outer-join
是彼此的别名。它们是一样的。如果您愿意的话,为了您自己的利益,我只想使用
OUTER
来澄清一下。我喜欢总是使用
外部
内部
,这样我就可以快速查看并看到我做了什么。@Stephanie-g8!这就是我需要的答案。是的,正如手册所说,OUTER提供了ODBC连接。最后,
OUTER
正如上面所说的@user182630,不能单独使用
FULL-OUTER-JOIN
在某些SQL语言中有效,但在MySQL中不可用。这就是为什么您最初的两个查询都出错的原因。
SELECT * FROM left_table OUTER JOIN right_table on left_table.name = righ
t_table.name;

SELECT * FROM left_table FULL OUTER JOIN right_table on left_table.name =
 right_table.name;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'OUTER
 JOIN right_table on left_table.name = right_table.name' at line 1


mysql> SELECT * FROM left_table RIGHT OUTER JOIN right_table on left_table.name
= right_table.name;
mysql> SELECT * FROM left_table RIGHT JOIN right_table on left_table.name
= right_table.name;
mysql> select * from left_table;
+----+---------+
| id | name    |
+----+---------+
|  1 | Pirate  |
|  2 | money   |
|  5 | Ninja   |
|  6 | pradeep |
+----+---------+
mysql> select * from right_table;
+----+-------------+
| id | name        |
+----+-------------+
|  1 | Rutabaga    |
|  2 | Pirate      |
|  3 | Darth Vader |
|  4 | Ninja       |
+----+-------------+
mysql> SELECT * FROM left_table LEFT JOIN right_table on left_table.name = right
_table.name where right_table.id is NULL;
+----+---------+------+------+
| id | name    | id   | name |
+----+---------+------+------+
|  2 | money   | NULL | NULL |
|  6 | pradeep | NULL | NULL |
+----+---------+------+------+
mysql> SELECT * FROM left_table LEFT OUTER JOIN right_table on left_table.name =
 right_table.name where right_table.id is NULL;
+----+---------+------+------+
| id | name    | id   | name |
+----+---------+------+------+
|  2 | money   | NULL | NULL |
|  6 | pradeep | NULL | NULL |
+----+---------+------+------+
table_reference NATURAL [{LEFT|RIGHT} [OUTER]] JOIN table_factor