100万数据不算很大, 尽可能把 名称字段的长度改小(比如实际最大只有50位长度,那就设置为80) 再按下面的做法试下: #1. 创建临时表 CREATE TEMPORARY TABLE tmp (id bigint primary key);#2. 将相关数据的主键插入到临时表中, insert into tmp(id) select id from tb where theName like '%企业名称%';#3. 查询得到实际的结果 select * from tb as a inner join tmp as b on a.id=b.id;#4. 删除临时表 drop TEMPORARY table tmp; 当然, 最好的做法还是 ES.
或者使用LOCATE(关键字,字段名称)>0,试试速度怎么样
再按下面的做法试下:
#1. 创建临时表
CREATE TEMPORARY TABLE tmp (id bigint primary key);#2. 将相关数据的主键插入到临时表中,
insert into tmp(id)
select id from tb where theName like '%企业名称%';#3. 查询得到实际的结果
select * from tb as a inner join tmp as b on a.id=b.id;#4. 删除临时表
drop TEMPORARY table tmp;
当然, 最好的做法还是 ES.
DBA 很多东西是试出来的, 不是想出来的
DBA 很多东西是试出来的, 不是想出来的不要信口开河, 试过了再说。
DBA 很多东西是试出来的, 不是想出来的我是试过的, 用like就是慢, 100w数据,
DBA 很多东西是试出来的, 不是想出来的不要信口开河, 试过了再说。
DBA 很多东西是试出来的, 不是想出来的我是试过的, 用like就是慢, 100w数据,
你要用我的代码试, 而不是用你的办法。