解析Mysql多表查询的实现

时间:2022-10-26 11:33:38

查询是数据库的核心,下面就为您介绍Mysql多表查询时如何实现的,如果您在Mysql多表查询方面遇到过问题,不妨一看。
Mysql多表查询:

复制代码代码如下:


CREATE TABLE IF NOT EXISTS contact( 
contact_id int(11) NOT NULL AUTO_INCREMENT, 
user_name varchar(255), 
nom varchar(255), 
prenom varchar(255), 
mail varchar(64), 
passcode char(64), 
PRIMARY KEY(contact_id) 
); 
CREATE TABLE IF NOT EXISTS droit( 
droit_id int( 11 ) NOT NULL AUTO_INCREMENT , 
droit varchar(255), 
PRIMARY KEY(droit_id) 
); 
CREATE TABLE IF NOT EXISTS contactdroit( 
contactdroit_id int(11) NOT NULL AUTO_INCREMENT, 
contact_id int( 11 ), 
droit_id int( 11 ), 
PRIMARY KEY( contactdroit_id ) 
); 
Insert into contact(contact_id, user_name) values(1,'user1'); 
Insert into contact(contact_id, user_name) values(2,'user2'); 
Insert into contact(contact_id, user_name) values(3,'user3'); 
Insert into droit(droit_id, droit) values(1,'admin'); 
Insert into droit(droit_id, droit) values(2,'superuser'); 
Insert into contactdroit(contact_id, droit_id) values(1, 1); 
Insert into contactdroit(contact_id, droit_id) values(2, 1); 
Insert into contactdroit(contact_id, droit_id) values(3, 2); 
SELECT c.contact_id, d.droit_id, d.droit FROM contact c, contactdroit cd, droit d 
where c.contact_id = cd.contact_id 
and cd.droit_id = d.droit_id; 


结果:

复制代码代码如下:


contact_id droit_id droit 
1 1 admin 
2 1 admin 
3 2 superuser 


以上就是Mysql多表查询的实现方法。