mysql - 为什么我的完整连接查询失败?

标签 mysql sql join

我有这个查询:

SELECT *, default_insurance.company AS company
FROM (default_insurance)
JOIN default_gruppe_rel
     ON default_gruppe_rel.uid = default_insurance.uid
JOIN default_profiles
     ON default_insurance.uid = default_profiles.id
WHERE `kontakt` = '1' 

现在我从中得到一个结果集,但是如果我想获得没有连接匹配的结果,并且只能通过将第一个连接类型更改为 FULL 来更改此查询,如下所示

SELECT *, default_insurance.company AS company
FROM (default_insurance)
FULL JOIN default_gruppe_rel
    ON default_gruppe_rel.uid = default_insurance.uid
JOIN default_profiles
    ON default_insurance.uid = default_profiles.id
WHERE `kontakt` = '1' 

我收到一条错误消息: 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行“FULL JOIN default_gruppe_rel ON default_gruppe_rel.uid = default_insurance.uid J”附近使用的正确语法

这是为什么呢?我的 MYSQL 版本不知道 FULL JOIN 吗?它已被弃用吗?

最佳答案

MySQL 不支持FULL JOINSee the MySQL docs用户评论中提供了一些解决方法。

关于mysql - 为什么我的完整连接查询失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7353794/

相关文章:

mysql - 可以在 mysql 中区分重音和不区分大小写的 utf8 排序规则吗?

sql - 为什么 SQL 将 & 显示为 &?

MySQL - 查找与连接表中所有行匹配的行和其他表中的字符串

Mysql - 选择单行的所有列及其值和列注释

mysql - 如何从 table1 中选择 table1.id 存在于 table2 的 id 列中的记录?

php - Laravel - 如何在两个表的内部循环但不连接表

sql - 如何配置 BizTalk WCF-SQL 适配器以从 SQL Server 2012 "always on"副本数据库获取数据?

php - PHP 中的 MySQL 出错,而 phpmyadmin 中的 MySQL 没有

MySQL:对表的所有行执行连接

mysql - 将 3 个表连接在一起 - 其中一个表返回空结果。如何在 WHERE 子句中忽略该表?