From another query (which has order by A asc, B asc
) I get the following table
A B nameA nameB date unique_id price
=========================================================
1 1 aaaaa aaaaa 2018-02-01 1 1
1 1 aaaaa aaaaa 2018-02-01 2 10
1 1 aaaaa aaaaa 2018-02-02 3 2
1 1 aaaaa aaaaa 2018-02-02 24 20
1 1 aaaaa aaaaa 2018-02-03 34 3
1 1 aaaaa aaaaa 2018-02-04 44 4
1 1 aaaaa aaaaa 2018-02-04 54 40
1 1 aaaaa aaaaa 2018-02-04 4 400
1 2 aaaaa bbbbb 2018-02-01 5 1
1 2 aaaaa bbbbb 2018-02-02 76 2
1 2 aaaaa bbbbb 2018-02-02 85 20
1 2 aaaaa bbbbb 2018-02-02 6 200
1 2 aaaaa bbbbb 2018-02-03 99 3
---------------------------------------------------------
1 3 aaaaa ccccc 2018-02-01 7 21
1 4 aaaaa ddddd 2018-02-01 8 21
1 4 aaaaa ddddd 2018-02-01 9 11
2 1 bbbbb aaaaa 2018-02-01 10 1
2 2 bbbbb bbbbb 2018-02-01 11 20
2 3 bbbbb ccccc 2018-02-01 12 29
2 3 bbbbb ccccc 2018-02-01 13 40
3 2 ccccc bbbbb 2018-02-01 14 31
3 2 ccccc bbbbb 2018-02-01 15 13
3 9 ccccc xxxxx 2018-02-01 16 31
3 9 ccccc xxxxx 2018-02-01 17 10
4 3 ddddd ccccc 2018-02-01 18 10
4 3 ddddd ccccc 2018-02-01 19 10
4 4 ddddd ddddd 2018-02-01 20 10
4 6 ddddd fffff 2018-02-01 21 10
...
A and B are ids.
I would like to group by date "per each B
id", then sum prices, meaning that each B
will have multiple unique dates, (but unique only within B
rows). The result would look like
A B nameA nameB date total
============================================
1 1 aaaaa aaaaa 2018-02-01 11
1 1 aaaaa aaaaa 2018-02-02 22
1 1 aaaaa aaaaa 2018-02-03 3
1 1 aaaaa aaaaa 2018-02-04 444
1 2 aaaaa bbbbb 2018-02-01 1
1 2 aaaaa bbbbb 2018-02-02 222
1 3 aaaaa ccccc 2018-02-03 3
...
The problem is that the same date can appear in other rows coming below, but I don't want them grouped all together, so simple SELECT * FROM table GROUP BY date
is not working. I want to group dates only for each chuck of rows (having the same B
id).
Is this even possible in mysql (or sql) ?