在MySQL中使用MAX函数时如何提高性能

时间:2017-07-03 07:10:29

标签: mysql

我有以下条件的观点:

select max(table_name.column1) AS `column1`,
table_name.column AS column2,
max(table_name.column3) AS column3,
max(table_name.column4) AS column4 
from table_name 
where (table_name.column5 = 'message') 
group by table_name.column2

此视图上的选择会对性能产生一些影响。

表上的索引是: column1是primarykey column2已编入索引 column5已编入索引

任何人都可以让我知道如何从上面的观点中获得更好的表现。

1 个答案:

答案 0 :(得分:0)

你应该避免使用condtion这些无效的索引用法

的unseful()
  select max(table_name.column1) AS `column1`,
  table_name.column AS column2,
  max(table_name.column3) AS column3,
  max(table_name.column4) AS column4 
  from table_name 
  where table_name.column5 = 'message'
  group by table_name.column2

并在列中添加复合索引,其中包含列中的列,然后是select

中的列

例如:

create index my_index on table_name    (column5, column2, column1, column3, column4)