1
Rache1 May 6, 2022
直接加 where 的条件不就好了吗,and 连接起来。
|
2
DoraemonWOO OP 尝试使用最粗暴的方法,目前数据量 1W 左右,大概 1 秒。后面数据上去应该就会顶不住了。
SELECT * FROM ( SELECT * FROM ( SELECT * FROM `additive` WHERE normal LIKE '%生产%' OR fca_no LIKE '%生产%' OR cas LIKE '%生产%' OR chemical_name LIKE '%生产%' OR use_range LIKE '%生产%' OR `limit` LIKE '%1%' OR sml LIKE '%生产%' OR other LIKE '%生产%' OR other_name LIKE '%生产%' ) a WHERE normal LIKE '%塑料%' OR fca_no LIKE '%塑料%' OR cas LIKE '%塑料%' OR chemical_name LIKE '%塑料%' OR use_range LIKE '%塑料%' OR `limit` LIKE '%塑料%' OR sml LIKE '%塑料%' OR other LIKE '%塑料%' OR other_name LIKE '%塑料%' ) b WHERE normal LIKE '%锂元素%' OR fca_no LIKE '%锂元素%' OR cas LIKE '%锂元素%' OR chemical_name LIKE '%锂元素%' OR use_range LIKE '%锂元素%' OR `limit` LIKE '%锂元素%' OR sml LIKE '%锂元素%' OR other LIKE '%锂元素%' OR other_name LIKE '%锂元素%' |
3
wolfie May 6, 2022
上 ES 。
或者自己写分词规则搞关联表建索引。 |
4
play78 May 6, 2022
用 where in 试一下?
select * from `additive` where id in ( select id from `additive` where normal like '%生产%' ) and normal like '%塑料%' |
5
PerFectTime May 6, 2022
用 ES 吧
|
6
sadfQED2 May 7, 2022 via Android
你这不走索引,全表扫描肯定慢啊。解决方案:上 es
|