[英]How to optimize SQL query with multiple SELECTs from the same table?
How can I optimizate this SQL Query? 如何优化此SQL查询?
(SELECT SUM (same_field) FROM same_table WHERE other_same_field = '0') AS a,
(SELECT SUM (same_field) FROM same_table WHERE other_same_field = '1') AS b,
(SELECT SUM (same_field) FROM same_table WHERE other_same_field = '2') AS c
When you want to do a pivot in MySQL you can do Aggregate on a Case statement 当您想在MySQL中进行数据透视时,可以对Case语句进行汇总
SELECT
SUM ( CASE WHEN other_same_field = 0 THEN same_field ELSE 0 END) as A,
SUM ( CASE WHEN other_same_field = 1 THEN same_field ELSE 0 END) as B,
SUM ( CASE WHEN other_same_field = 2 THEN same_field ELSE 0 END) as C
FROM same_table
WHERE other_same_field IN (0, 1, 2)
This will give you a vertical result. 这将为您带来垂直的结果。
SELECT other_same_field, SUM(same_field)
FROM same_table
WHERE other_same_field IN (0, 1, 2)
GROUP BY other_same_field
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.