select top 20 a.hot_level, a.hot_name,b.room_name,b.room_priceq,b.room_pricep,b.room_pricez,b.room_type,b.room_tuijian,b.id,a.hot_number,a.id as hotelid,a.hot_time,a.hot_level,a.hot_pic from LI_hotel a,LI_room b
where a.hot_number like 'hotel%'
and a.hot_aera<>'1000'
and a.hot_number=b.room_hotelnumber
and b.room_type='0'
and b.room_tuijian='1'
5 回答
萧十郎
TA贡献1815条经验 获得超13个赞
记得以前看过一篇文章,这样写的:
3、查询条件中使用了不等于操作符(<>、!=)的select语句执行慢
原因:SQL中,不等于操作符会限制索引,引起全表扫描,即使比较的字段上有索引
方法:通过把不等于操作符改成or,可以使用索引,避免全表扫描。例如,把column<>’aaa’,改成 column<’aaa’ or column>’aaa’,就可以使用索引了。
and a.hot_aera<>'1000' 楼主是否可改一下,看性能比较。
对于右模糊查询,即like ‘…%’,是会使用索引的;左模糊like‘%...’无法直接使用索引;
- 5 回答
- 0 关注
- 517 浏览
添加回答
举报
0/150
提交
取消