mysql中特定条件的总和

时间:2015-04-13 06:06:07

标签: mysql sum

查询:

select date, query_type, light_mapped_count, heavy_mapped_count, lightandheavy_mapped_count, total_queries
from search_converted_play

我得到了:

| date       | query_type     | light_mapped_count | heavy_mapped_count |
| 2015-01-01 | browse         |                162 |                592 |
| 2015-01-01 | browse_scroll  |                 11 |                 48 |
| 2015-01-02 | browse         |                640 |               3001 |                        253 |
| 2015-01-02 | browse_scroll  |                 75 |                570 |                         49 |

现在,我想要特定日期的light_mapped_count和heavy_mapped_count的所有查询类型的总和,因此输出应为:

| date       | query_type     | light_mapped_count | heavy_mapped_count |
| 2015-01-01 | browse         |                162 |                592 |
| 2015-01-01 | browse_scroll  |                 11 |                 48 |
| 2015-01-01 | all            |                173 |                640 |
| 2015-01-02 | browse         |                640 |               3001 |                        253 |
| 2015-01-02 | browse_scroll  |                 75 |                570 |                         49 |
| 2015-01-02 | all            |                715 |               3571 |

关于如何做到这一点的任何想法?

1 个答案:

答案 0 :(得分:2)

尝试使用UNION,如下所示:

SELECT date, query_type, light_mapped_count, heavy_mapped_count
FROM search_converted_play
UNION
SELECT date, 'all', SUM(light_mapped_count), SUM(heavy_mapped_count)
FROM search_converted_play
GROUP BY date
ORDER BY date