记录备忘下,初始数据如下:
DROP TABLE IF EXISTS t_demo_product;
CREATE TABLE IF NOT EXISTS t_demo_product(
proid int(20),
proname varchar(20),
price int(10),
PRIMARY KEY(proid)
)ENGINE=InnoDB DEFAULT CHARSET=gbk; DROP TABLE IF EXISTS t_demo_operation;
CREATE TABLE IF NOT EXISTS t_demo_operation(
opid int(10),
proid int(20),
opcount int(10),
PRIMARY KEY(opid)
)ENGINE=InnoDB DEFAULT CHARSET=gbk; insert into t_demo_product(proid, proname, price) values
(1,'产品A','')
,(2,'产品B','')
,(3,'产品C','')
,(4,'产品D','')
,(5,'产品E',''); insert into t_demo_operation(opid, proid, opcount) values
(1,1,2)
,(2,3,6)
,(3,3,1)
,(4,4,3)
,(5,7,3);
//内连接,不允许未空
select * from t_demo_product a, t_demo_operation b where a.proid = b.proid;
select * from t_demo_product a join t_demo_operation b on a.proid = b.proid;
//左连接,以t_demo_product为主,若对应存在多条记录则记录多条,无则为空
select * from t_demo_product a left join t_demo_operation b on a.proid = b.proid;
//右连接, 以t_demo_operation为主,若对应多条则记录多条,无则为空
select * from t_demo_product a right join t_demo_operation b on a.proid = b.proid;