在sql语句中使用 like模糊查询时,应该尽量避免%%,因为模糊查询是比较慢的,当出现这样的情况时,应该考虑优化。

举个例子:我在表中查询2012 年创建的记录

SELECT * FROM `component_data` WHERE creation_date LIKE '2012%';

  得到的时间

[SQL] SELECT * FROM `component_data` WHERE creation_date LIKE '2012%';
受影响的行: 0
时间: 0.500ms

  考虑优化之后的sql如下

SELECT * FROM `component_data` WHERE creation_date>='2012-01-01' AND creation_date<'2013-01-01';

  运行结果

[SQL] SELECT * FROM `component_data` WHERE creation_date>='2012-01-01' AND creation_date<'2013-01-01';
受影响的行: 0
时间: 0.328ms

  可以看出,优化之后的提升是很大的。当查询的结果比较多时,这个差异更为明显。我这个查询只有9000多条数据。

 

我只是举了个例子。当遇到like查询时,大家应该充分发挥你的聪明才智,具体问题进行具体对待,进行优化

相关文章:

  • 2021-10-16
  • 2021-10-31
猜你喜欢
  • 2021-12-15
  • 2021-05-19
  • 2022-12-23
  • 2021-11-18
  • 2019-07-20
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案