我想找到特定州的頂級貢獻者: 下面的候選人爲該州收集了特定的選票。 找到該州的最佳候選人。特定類別的頂級推薦用戶
create table uservotes(id int, name varchar(50), vote int,state int);
INSERT INTO uservotes VALUES
(1, 'A', 34,1),
(2, 'B', 80,1),
(3, 'bA', 30,1),
(4, 'C', 8,1),
(5, 'D', 4,1),
(6, 'E', 14,2),
(7, 'F', 304,2),
(8, 'AA', 42,3),
(9, 'Ab', 6,3),
(10, 'Aa', 10,3);
美國
create table states(state_id int, name_state varchar(50));
INSERT INTO states VALUES
(1, 'CA'),
(2, 'AL'),
(3, 'AZ'),
我要找:根據貢獻的行列
爲
CAL
2
1
3
4
5
。 我如何得到這個。
我真的很感激任何幫助。
在此先感謝。
代碼嘗試:
select uv.*, (@rank := @rank + 1) as rank
from uservotes uv,states s cross join
(select @rank := 0) const on uv.statesid = s.state_id
where name_state = 'CAL'
order by vote desc;
的[獲得MySQL的特定用戶的等級(可能重複http://stackoverflow.com/questions/21210623/get-rank-of-specific- users-in-mysql) –
它不一樣,它是特定類別的頂級用戶,而不是所有具有特定子集的用戶。 – jason