1.構建一張表
create table if not exists scores (id int,score decimal(3,2));
truncate table scores;
insert into scores (id, score) values ('1','3.5');
insert into scores (id, score) values ('2','3.65');
insert into scores (id, score) values ('3','4.0');
insert into scores (id, score) values ('4','3.85');
insert into scores (id, score) values ('5','4.0');
insert into scores (id, score) values ('6','3.65');
-- 查詢去重後分數的,條件:當前行分數大於等於同表的分數的count數量,去重顯示,然後降序輸出
select score, (select count(distinct score) from scores where score>=s.score)
as rank from scores as s order by score desc;
-- 首先查詢去重後的分數作為新錶,使用count統計行,
-- 條件:當前去重表後的分數》=未去重的分數作為rank的引數,然後使用排序降序輸出
mysql 分數排名
表table1 欄位1 chengji 成績 欄位2 paiming 排名 50 0 80 0 70 0 20 0 90 0 如何用1條mysql查詢語句,執行後讓他們變成 欄位1 chengji 成績 欄位2 paiming 排名 50 4 80 2 70 3 20 5 90 1 solution...
MySql 分數排名
題目 編寫乙個 sql 查詢來實現分數排名。如果兩個分數相同,則兩個分數排名 rank 相同。請注意,平分後的下乙個名次應該是下乙個連續的整數值。換句話說,名次之間不應該有 間隔 id score 1 3.50 2 3.65 3 4.00 4 3.85 5 4.00 6 3.65 例如,根據上述給定...
MYSQL分數排名
編寫乙個 sql 查詢來實現分數排名。如果兩個分數相同,則兩個分數排名 rank 相同。請注意,平分後的下乙個名次應該是下乙個連續的整數值。換句話說,名次之間不應該有 間隔 id score 1 3.50 2 3.65 3 4.00 4 3.85 5 4.00 6 3.65 例如,根據上述給定的 s...