gpt4 book ai didi

mysql连接说明

转载 作者:太空宇宙 更新时间:2023-11-03 11:11:37 24 4
gpt4 key购买 nike

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;

这 2 个语句给出了以下错误。它们不是有效的 mysql 语句吗?

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;

给出相同的结果。那么在语句中添加 OUTER 的基本用途是什么?

我想知道通过在语句 where 中添加 OUTER 来实现什么特殊目的,而不添加它也返回相同的输出。

----更新----

好的,我给出我的表结构

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 |
+----+---------+------+------+

它们仍然产生相同的输出。因此,如果 any1 可以显示一些结果会有所不同的陈述。我会理解的。

最佳答案

我不知道您使用的是哪个版本的 mySql,但外连接与左连接或右连接结合使用,这是语法

table_reference NATURAL [{LEFT|RIGHT} [OUTER]] JOIN table_factor

所以外连接本身没有意义,除非它伴随着左或右。

你可能会发现这个引用很方便

http://dev.mysql.com/doc/refman/5.0/en/join.html

关于mysql连接说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8153209/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com