2249
0
admin
IP 编辑 禁止 帖子 清理
使用道具
1104
2
桃子++
select * from tbl where id=(select id from tbl where instr(name,'javakc')>0)
让SQL语句可序列化,换一种判断方式即可
管理
856
bnlnk
select * from tbl where name like '%javakc%';
1700
song
尽量不要使用 like‘%……%’
对于like‘……%’,oracle可以应用colunm上的index
对于like‘%……’的 可以利用reverse+function index的形式
1674
WR
select *from tbl where name YY_BHLIKE '%JAVAKC%'
1546
一个人的时光
1518
Cracia
("p"."newname" is nukk and instr("p"."names",'javakc')>0);
create index ide_t on tbl(instr(names,'javakc'),newname);
1636
renmihe
like "%_" 百分号在前时,停用了索引
1576
liufangyuan
查询语句中尽量避免用*号,不必要的数据不要进行查询,会降低效率
查询需要的数据即可,例如:
select name from tbl where name like '%javakc%'
1402
马鹏磊
一般含有like的sql一下3种情况:
1.%在尾,类似like 'abc%',这种在查询列创建一般索引。
2.%在头,类似like '%abc',这种情况查询利用反向索引和反向函数
3.%在头和尾,类似 like '% abc %',这种情况利用instr函数和函数索引
1510
zhangjialong
1451
gaoye
529
刘瑞
1450
Sarbr
342
CH
300
505773371
587
XY
176
zjx
281
9
love
先拆表,把大表拆成小表 create table tab2 as (select id,name from tab1) ;
from tab1 t1 , tab2 t2
where t1.id=t2.id
and t2.name like '%javakc%';
能否提高数据的查询效率,还要根据数据量去做测试
1902
王之神判
1932
740317431
1694
wulinan
1135
zxx
利用instr函数+函数索引
312
梧桐灯
435
雒鑫鑫
1213
yanghao
62
流苏天
298
moon110
1.%在尾,在查询列创建一般索引
2.%在头,在查询列创建反向索引和反向函数
3.%在头和尾,使用instr函数和函数索引
不推荐使用第三种,
优化
站点统计|举报|Archiver|手机版|小黑屋|Comsenz Inc.
GMT+8, , Processed in 0.195171 second(s), 9 queries .
Powered by javakc! X1.0
© 2004-2014 javakc
f1208.com 备案号:京ICP备14030918号-1