首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

以上哪一个SQL执行效率更快点 数据库是MYSQL

2012-09-23 
以下哪一个SQL执行效率更快点 数据库是MYSQL信息表info 栏目表classt现在查询info表,条件是查询的info那个

以下哪一个SQL执行效率更快点 数据库是MYSQL
信息表info 栏目表classt

现在查询info表,条件是查询的info那个表的信息所属的栏目模型ID(字段modid)不等于10,用classid关联两个表
我有两种方法
1,select * from info where (select modid from classt where classid=info.classid)<>10
2,select info.* from info,classt where classt.modid<>10

表面上看第二个简单些,因为需要结合程序,我用第一种方便
现不考虑方便问题,请问哪个SQL效率更高

[解决办法]
具体看一下explain select * from info where (select modid from classt where classid=info.classid)<>10

explain select info.* from info,classt where classt.moid<>10
执行计划不就知道那个效率更高一些。
[解决办法]
select info.* from info,classt where info.classid=classt .classid and classt.modid<>10

应该是这条语句的效率会更高一些。
具体可以explain select info.* from info,classt where info.classid=classt .classid and classt.modid<>10
select * from info where (select modid from classt where classid=info.classid)<>10
执行计划不就知道那个效率更高一些。

热点排行