前言
在mysql中,多表连接查询是很常见的需求,在使用多表查询时,可以from多个表,也可以使用join连接连个表
这两种查询有什么区别?哪种查询的效率更高呢? 带着这些疑问,决定动手试试
1.先在本地的mysql上先建两个表one和two
one表
CREATE TABLE `one` (
`id` int(0) NOT NULL AUTO_INCREMENT,
`one` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARACTER SET = utf8;
two表
CREATE TABLE `two` (
`id` int(0) NOT NULL AUTO_INCREMENT,
`two` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARACTER SET = utf8;
先随便插入几条数据,查询看一下;
select one.id,one.one,two.id,two.two from one,two where one.id=two.id;
select one.id,one.one,two.id,two.two from one join two on one.id=two.id;
对比这两次的查询,查询时间几乎没有区别,查看sql运行分析