- 自连接把自身一张表通过别名作为两个表,通常用于将表的某个字段与该表的同一字段的其它值进行比较,为了区分两个表,在 SQL 语句中需要至少重命名一个表
语法
SELECT a.<col_name_a>, b.<col_name_b> ...
FROM <tbl_name> AS a, <tbl_name> AS b
WHERE where_condition;
参数 |
描述 |
<tbl_name> |
数据表名 |
<column_name_a> <column_name_b> |
数据表列名 |
where_condition |
where条件语句 |
示例
id |
category_name |
parent_id |
1 |
手机 |
0 |
2 |
华为手机 |
1 |
3 |
电脑 |
4 |
SELECT a.id, b.category_name...
FROM category AS a, category AS b
WHERE a.id = b.parent_id;
运行结果如下:
id |
category_name |
2 |
华为手机 |