select t1.telephone, t1.tele_detail from t1 where t1.telephone ='66666667' or t1.tele_detail like '%66666667%'
如果你建了多个索引的,可以用UNION替换OR select t1.telephone, t1.tele_detail from t1 where t1.telephone ='66666667' union select t1.telephone, t1.tele_detail from t1 where t1.tele_detail like '%66666667%'
你表中有多少数据? 可以telephone字段加索引,按照1楼给的SQL执行看下执行计划。
select t1.telephone, t1.tele_detail from t1 where t1.telephone ='66666667' UNION select t1.telephone, t1.tele_detail from t1 WHERE t1.tele_detail like '%66666667%'
select t1.telephone, t1.tele_detail from t1 where t1.telephone like '66666667' or t1.tele_detail like '%66666667%'如果数据量很大,试试在字段telephone建普通索引,在tele_detail建全文索引
select t1.telephone, t1.tele_detail from t1 where t1.telephone like '66666667' or t1.tele_detail like '%66666667%' 创建索引, %放在结尾。
--如果telephone字段上有索引,可以这样试试 --另外,如果可以将like语句改为 like '66666667%'并且tele_detail有索引,可以提高效率 select /*+use_concat()*/t1.telephone, t1.tele_detail from t1 where t1.telephone like '66666667' or t1.tele_detail like '%66666667%'
from t1
where t1.telephone ='66666667'
or t1.tele_detail like '%66666667%'
select t1.telephone, t1.tele_detail
from t1
where t1.telephone ='66666667'
union
select t1.telephone, t1.tele_detail
from t1
where t1.tele_detail like '%66666667%'
可以telephone字段加索引,按照1楼给的SQL执行看下执行计划。
from t1
where t1.telephone ='66666667'
UNION
select t1.telephone, t1.tele_detail
from t1
WHERE t1.tele_detail like '%66666667%'
select t1.telephone, t1.tele_detail
from t1
where t1.telephone like '66666667'
or t1.tele_detail like '%66666667%'如果数据量很大,试试在字段telephone建普通索引,在tele_detail建全文索引
select t1.telephone, t1.tele_detail from t1 where t1.telephone like '66666667' or t1.tele_detail like '%66666667%' 创建索引, %放在结尾。
--如果telephone字段上有索引,可以这样试试
--另外,如果可以将like语句改为 like '66666667%'并且tele_detail有索引,可以提高效率
select /*+use_concat()*/t1.telephone, t1.tele_detail
from t1
where t1.telephone like '66666667'
or t1.tele_detail like '%66666667%'