mysql中特定条件的总和
查询:mysql中特定条件的总和,mysql,sum,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 |
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 |
现在,我想要一个特定日期的所有查询类型的轻映射计数和重映射计数的总和,因此输出应该是:
| 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 |
有没有办法做到这一点?尝试使用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
可能是重复的,但是对于每个日期,我现在得到2种查询类型。例如,对于2015-01-01,我得到了2个“浏览”,等等。我刚才使用了你上面的查询,相信你实际上得到了一行。