视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
mysqlLEFTJOIN多表联结查询
2020-11-09 09:52:26 责编:小采
文档


在mysql中如果要同时查找多表并且多表时间有关系查询我们有很多种方法来实现,现在我们只介绍利用mysql LEFT JOIN来实现。

具体操作

MySQL支持Select和某些Update和Delete情况下的Join语法,具体语法上的细节有:
table_references:
table_reference [, table_reference] …
table_reference:
table_factor
| join_table
table_factor:
tbl_name [[AS] alias]
[{USE|IGNORE|FORCE} INDEX (key_list)]
| ( table_references )
| { OJ table_reference LEFT OUTER JOIN table_reference
ON conditional_expr }
join_table:
table_reference [INNER | CROSS] JOIN table_factor [join_condition]
| table_reference STRAIGHT_JOIN table_factor
| table_reference STRAIGHT_JOIN table_factor ON condition
| table_reference LEFT [OUTER] JOIN table_reference join_condition
| table_reference NATURAL [LEFT [OUTER]] JOIN table_factor
| table_reference RIGHT [OUTER] JOIN table_reference join_condition
| table_reference NATURAL [RIGHT [OUTER]] JOIN table_factor
join_condition:
ON conditional_expr | USING (column_list)

除了常用的两个表连接之外,SQL(MySQL) JOIN 语法还支持多表连接。多表连接基本语法如下:

... FROM table1 INNER|LEFT|RIGHT JOIN table2 ON condition INNER|LEFT|RIGHT JOIN table3 ON condition ...

JOIN 多表连接实现了从多个表中获取相关数据,下面是三个原始数据表:

article 文章表:
aid title content uid tid
1 文章1 文章1正文内容... 1 1
2 文章2 文章2正文内容... 1 2
3 文章3 文章3正文内容... 2 1
5 文章5 文章5正文内容... 4 1
user 用户表:
uid username email
1 admin admin@5idev.com
2 小明 xiao@163.com
3 Jack jack@gmail.com
type 文章类型表:
tid typename
1 普通文章
2 精华文章
3 草稿

代码如下

SELECT * FROM t1 LEFT JOIN (t2, t3, t4) ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)

下载本文
显示全文
专题