我正面临与mysql查询有关的问题。我需要先计算否。按不同级别的记录,然后显示其列表,例如:
select MAX(Orders) from priority where priority_type='Top_Priority';
select MAX(Orders) from priority where priority_type='Priority';
select MAX(Orders) from priority where priority_type='Regular';
在那之后,我得到了相同的记录,如:
select * from priority where priority_type='Top_Priority';
select * from priority where priority_type='Priority';
select * from priority where priority_type='Regular';
执行需要很多时间。还有另一种方法可以提高执行性能。
答案 0 :(得分:0)
您可以将每种类型的最大记录合并在一起。
SELECT t1.*, t2.OrderMax
FROM priority AS t1
JOIN (SELECT priority_type, MAX(Orders) AS OrderMax
FROM priority
GROUP BY priority_type) AS t2 ON t1.priority_ttpe = t2.priority_type
要加快此查询的速度,最好在表中(priority_type, Orders)
上有一个多列索引。