最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL使用變量實現(xiàn)各種排序

 更新時間:2017年05月20日 13:58:10   作者:feixianxxx  
這篇文章主要介紹了MySQL使用變量實現(xiàn)各種排序,需要的朋友可以參考下

核心代碼

--下面我演示下MySQL中的排序列的實現(xiàn)
--測試數(shù)據(jù)
CREATE TABLE tb
(
score INT
);
INSERT tb SELECT 
5 UNION ALL SELECT 
4 UNION ALL SELECT 
4 UNION ALL SELECT 
4 UNION ALL SELECT 
3 UNION ALL SELECT 
2 UNION ALL SELECT
1;
--1.row_number式的排序
SET @row_number =0;
SELECT @row_number := @row_number+1 AS row_number,score 
FROM tb 
ORDER BY score DESC ;
+------------+-------+
| row_number | score |
+------------+-------+
|     1 |   5 |
|     2 |   4 |
|     3 |   4 |
|     4 |   4 |
|     5 |   3 |
|     6 |   2 |
|     7 |   1 |
+------------+-------+
--2.dense_rank式的排序
SET @dense_rank = 0,@prev_score = NULL;
SELECT @dense_rank :=IF(@prev_score=score,@dense_rank,@dense_rank+1) AS decnse_rank,
  @prev_score := score AS score 
FROM tb 
ORDER BY score DESC ; 
+-------------+-------+
| decnse_rank | score |
+-------------+-------+
|      1 |   5 |
|      2 |   4 |
|      2 |   4 |
|      2 |   4 |
|      3 |   3 |
|      4 |   2 |
|      5 |   1 |
+-------------+-------+
--3.rank式的排序
SET @row=0,@rank=0,@prev_score=NULL;
SELECT @row:=@row+1 AS ROW,
    @rank:=IF(@prev_score=score,@rank,@row) AS rank,
    @prev_score:=score AS score
FROM tb 
ORDER BY score DESC;
+------+------+-------+
| ROW | rank | score |
+------+------+-------+
|  1 |  1 |   5 |
|  2 |  2 |   4 |
|  3 |  2 |   4 |
|  4 |  2 |   4 |
|  5 |  5 |   3 |
|  6 |  6 |   2 |
|  7 |  7 |   1 |
+------+------+-------+

相關(guān)文章

  • MySQL觸發(fā)器簡單用法示例

    MySQL觸發(fā)器簡單用法示例

    這篇文章主要介紹了MySQL觸發(fā)器簡單用法,結(jié)合實例形式分析了mysql觸發(fā)器的創(chuàng)建、執(zhí)行、查看、刪除等相關(guān)操作技巧,需要的朋友可以參考下
    2018-03-03
  • 解決啟動MySQL服務(wù)時出現(xiàn)"mysql本地計算機上的MySQL服務(wù)啟動后停止"的問題

    解決啟動MySQL服務(wù)時出現(xiàn)"mysql本地計算機上的MySQL服務(wù)啟動后停止"的問題

    某一天我的MySQL啟動突然出現(xiàn)了異常:“mysql本地計算機上的MySQL服務(wù)啟動后停止,某些在未由其他服務(wù)或程序使用時將自動停止,”?,小編在網(wǎng)絡(luò)上面找了很多方法,MySQL啟動成功了,但是第二天開啟MySQL時還是出現(xiàn)了這個問題,現(xiàn)把兩種方法總結(jié)一下,需要的朋友可以參考下
    2023-11-11
  • MySQL清空所有表的數(shù)據(jù)方法示例

    MySQL清空所有表的數(shù)據(jù)方法示例

    本文主要介紹了MySQL清空所有表的數(shù)據(jù)方法示例,要清空MySQL數(shù)據(jù)庫中所有表的數(shù)據(jù),但保留表結(jié)構(gòu),下面就介紹了幾種常用的方法,具有一定的參考價值,感興趣的可以了解一下
    2024-07-07
  • MySQL 5.0.96 for Windows x86 32位綠色精簡版安裝教程

    MySQL 5.0.96 for Windows x86 32位綠色精簡版安裝教程

    這篇文章主要介紹了MySQL 5.0.96 for Windows x86 32位綠色精簡版安裝教程,需要的朋友可以參考下
    2017-10-10
  • Mysql轉(zhuǎn)PostgreSQL注意事項及說明

    Mysql轉(zhuǎn)PostgreSQL注意事項及說明

    這篇文章主要介紹了Mysql轉(zhuǎn)PostgreSQL注意事項及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-10-10
  • mysql中binlog_format模式與配置詳細(xì)分析

    mysql中binlog_format模式與配置詳細(xì)分析

    這篇文章主要介紹了mysql中binlog_format模式與配置的相關(guān)內(nèi)容,詳細(xì)介紹了binlog的三種格式與SBR、 RBR 兩種模式各自的優(yōu)缺點,需要的朋友可以參考。
    2017-10-10
  • 超越MySQL 對流行數(shù)據(jù)庫進(jìn)行分支的知識小結(jié)

    超越MySQL 對流行數(shù)據(jù)庫進(jìn)行分支的知識小結(jié)

    盡管MySQL是最受歡迎的程序之一,但是許多開發(fā)人員認(rèn)為有必要將其拆分成其他項目,并且每個分支項目都有自己的專長。該需求,以及 Oracle 對核心產(chǎn)品增長緩慢的擔(dān)憂,導(dǎo)致出現(xiàn)了許多開發(fā)人員感興趣的子項目和分支
    2012-01-01
  • MySQL中BIGINT數(shù)據(jù)類型如何存儲整數(shù)值

    MySQL中BIGINT數(shù)據(jù)類型如何存儲整數(shù)值

    mysql數(shù)據(jù)庫設(shè)計,其中對于數(shù)據(jù)性能優(yōu)化,字段類型考慮很重要,下面這篇文章主要給大家介紹了關(guān)于MySQL中BIGINT數(shù)據(jù)類型如何存儲整數(shù)值的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-10-10
  • LEFT JOIN條件在on后面和在where后面的區(qū)別及說明

    LEFT JOIN條件在on后面和在where后面的區(qū)別及說明

    這篇文章主要介紹了LEFT JOIN條件在on后面和在where后面的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • MySQL數(shù)據(jù)庫的高可用方案總結(jié)

    MySQL數(shù)據(jù)庫的高可用方案總結(jié)

    這篇文章主要針對MySQL數(shù)據(jù)庫的高可用方案進(jìn)行詳細(xì)總結(jié),高可用架構(gòu)對于互聯(lián)網(wǎng)服務(wù)基本是標(biāo),本文是對各種方案的總結(jié),感興趣的小伙伴們可以參考一下
    2016-05-05

最新評論

政和县| 蒲城县| 通许县| 霞浦县| 昭苏县| 聊城市| 宜兴市| 江门市| 碌曲县| 乐山市| 子洲县| 苏尼特右旗| 进贤县| 岳普湖县| 舞阳县| 衡水市| 阜平县| 社旗县| 墨江| 牙克石市| 常德市| 九龙坡区| 大悟县| 清河县| 平乐县| 盐边县| 浦东新区| 新田县| 清水河县| 固原市| 石景山区| 涪陵区| 陵水| 乌拉特中旗| 平远县| 新建县| 吉安县| 贺州市| 平乡县| 宜阳县| 封丘县|