自連線
自連線是一種特殊的表連線,它是指相互連線的表在物理上同為一張表,但是邏輯上是多張表。自連線通常用於表中的資料有層次結構,如區域表、選單表、商品分類表等。
自連線語法
select a.column,b.column
from table a,table b
where a.column = b.column;
建立表、插入資料
create table area(
id int not null auto_increment primary key comment '區域id',
pid int not null comment '符父id(0-省份)',
name varchar(30) comment '區域名稱'
)default charset=utf8;
insert into area(id,pid,name) values(1,0,'湖北省');
insert into area(id,pid,name) values(2,1,'荊州');
insert into area(id,pid,name) values(3,1,'武漢');
insert into area(id,pid,name) values(4,0,'江蘇省');
insert into area(id,pid,name) values(5,4,'南京');
insert into area(id,pid,name) values(6,4,'蘇州');
示例:select * from area where pid<>0;
select a.id,a.name,b.name as provincename
from area a,area b
where a.pid = b.id and a.pid<>0;
標籤:insert,name,area,pid,連線,values,mysql,id
mysql自連線例項 Mysql自連線查詢例項詳解
自連線查詢 假想以下場景 某一電商 想要對站內產品做層級分類,乙個類別下面有若干子類,子類下面也會有別的子類。例如數碼產品這個類別下面有筆記本,台式電腦,智慧型手機等 筆記本,台式電腦,智慧型手機又可以按照品牌分類 品牌又可以按照 分類,等等。也許這些分類會達到乙個很深的層次,呈現一種樹狀的結構。那...
mysql自連線查詢 Mysql自連線查詢例項詳解
自連線查詢 假想以下場景 某一電商 想要對站內產品做層級分類,乙個類別下面有若干子類,子類下面也會有別的子類。例如數碼產品這個類別下面有筆記本,台式電腦,智慧型手機等 筆記本,台式電腦,智慧型手機又可以按照品牌分類 品牌又可以按照 分類,等等。也許這些分類會達到乙個很深的層次,呈現一種樹狀的結構。那...
MySQL 自聯結 自連線
例如想於下方表中找出與在 愛藝奇 公司的客戶同名的顧客。第一步 找出在 愛藝奇 的客戶的姓名,第二步 從全表中去查詢姓名與第一步查詢出來一樣的客戶 where cust name in in 不能寫成 不然容易報錯。因為子查詢有可能返回的是多條記錄。這跟子查詢只能返回單列無關,單列與單行。子查詢 s...