0
這樣的問題很少,但它們不是以一種簡單的方式構建的,使答案可以用於更一般的情況。這些問題是爲特定情況而建立的。Mysql group by by by by?
假設我們有一個表
id letter
----------
1 a
2 a
3 b
4 b
5 a
我們如何得到這樣的結果?
1 a 2
3 b 2
5 a 1
這樣的問題很少,但它們不是以一種簡單的方式構建的,使答案可以用於更一般的情況。這些問題是爲特定情況而建立的。Mysql group by by by by?
假設我們有一個表
id letter
----------
1 a
2 a
3 b
4 b
5 a
我們如何得到這樣的結果?
1 a 2
3 b 2
5 a 1
基本上你需要知道什麼時候你有一個新的「行」來分組。我排名不送改變字母
select min(id), letter, sum(my_count)
from (
select
id, letter, count(id) as my_count,
@rank := if (@letter = letter, @rank, @rank + 1) as rank,
@letter := letter
from test
cross join (select @rank := 0, @letter := '') t
group by id
) t
group by rank;
的可能的複製[MySQL的順序由前組由(http://stackoverflow.com/questions/14770671/mysql-order-by-前基團的通過) –