現在有這樣一張表user,欄位為id,name,number.想要實現這樣的效果,以number排序,查詢某個id所在的資料排在第幾位,假如這個資料有幾個相同的,那麼取它為最低排名.
例如有這麼幾行: id name number
1 a 10
2 b 20
3 c 10
4 d 5
現在查詢id為3的資料,它可以排名第2或者第3,那麼一定要讓它取第3這種情況.
建立實驗環境如下
mysql> create table tbl (
-> id int primary key,
-> col int
-> );
query ok, 0 rows affected (0.08 sec)
mysql> insert into tbl values
-> (1,26),
-> (2,46),
-> (3,35),
-> (4,68),
-> (5,93),
-> (6,92);
query ok, 6 rows affected (0.05 sec)
records: 6 duplicates: 0 warnings: 0
mysql>
mysql> select * from tbl order by col;
+----+------+
| id | col |
+----+------+
| 1 | 26 |
| 3 | 35 |
| 2 | 46 |
| 4 | 68 |
| 6 | 92 |
| 5 | 93 |
+----+------+
6 rows in set (0.00 sec)
mysql> select @x:=ifnull(@x,0)+1 as rownum,id,col
-> from tbl
-> order by col;
親測 可用需要設定下@x =0 否則輸出的資料要--1
java中排序演算法
常用的排序演算法有以下幾類 插入排序 直接插入排序,希爾排序 選擇排序 簡單選擇排序,堆排序 交換排序 氣泡排序,快速排序 歸併排序,基數排序。排序方法選擇得當與否直接影響程式執行的速度和輔助儲存空間的占有量,進而影響整個軟體的效能。下面對這些演算法一一的介紹他們究竟是怎麼排的。插入排序 直接插入排...
MongoDB中排序操作
mongodb中sort 方法 在mongodb中使用sort 方法對資料及逆行排序,sort 方法可以通過引數指定排序字段,並使用1和 1來指定排序的方式,其中1為公升序,而 1是用於降序排序。語法 db.collection name.find sort 例項 learn集合中的資料如下 對le...
STL中排序函式詳解
排序 sort 所有sort演算法介紹 使用的迭代器 iterator 都需是隨機迭代器 radomaccessiterator 1.所有 函式名功能描述 sort對給定區間所有元素進行排序 stable sort對給定區間所有元素進行穩定排序 partial sort對給定區間所有元素部分排序 p...