mysql - 如何左连接超过 3 个表

标签 mysql sql left-join

<分区>

作为一名大三学生,我正在努力创建一个基于 5 个表的 View :国家、业务、子业务、角色和类型

CREATE VIEW my_view AS
SELECT DISTINCT `a`.`country`, `b`.`business`, `c`.`sub_business`, `d`.`role`, `e`.`type`

FROM ((`country` `a` LEFT JOIN `business` `b` on  ((`a`.`username`=`b`.`username`)))    
    LEFT JOIN `sub_business` `c` on ((`a`.`username`=`c`.`username`)))
    LEFT JOIN `role` `d` on ((`a`.`username`=`d`.`username`)))
    LEFT JOIN `type` `e` on ((`a`.`username`=`e`.`username`)));

它适用于连接 3 个表,之后我收到语法错误。 而且,因为 USERNAME 在所有表中都是提高性能的一种方法吗? 预先感谢您的所有投入!

最佳答案

你的 () 顺序错误(且无用)

CREATE VIEW my_view AS
SELECT DISTINCT `a`.`country`, `b`.`business`, `c`.`sub_business`, `d`.`role`, `e`.`type`
FROM `country` `a` 
LEFT JOIN `business` `b` on  `a`.`username`=`b`.`username`  
LEFT JOIN `sub_business` `c` on `a`.`username`=`c`.`username`
LEFT JOIN `role` `d` on `a`.`username`=`d`.`username`
LEFT JOIN `type` `e` on `a`.`username`=`e`.`username`;

关于mysql - 如何左连接超过 3 个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57577854/

相关文章:

PHP MySql 存储数据24小时

MySQL 联合表使 MySQL 工作台崩溃

php - PHP 中的 UNION MySQL 结果将取决于第一个选择的列

sql - sqlite 中简单字符串表的奇怪行为

SQL LEFT 外部联接只有来自右侧的一些行?

mysql - 选择其他表中不存在的所有行

使用 `in` 子句的 C# 参数化查询 MySQL

mysql - 从 db 获取简单信息到 node.js http 服务器响应

SQL 服务器 : 2 questions for homework can't figure it out

Linq 到实体 Left Join