欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL5.7實現(xiàn)row_number()和over()函數(shù)

 更新時間:2024年06月03日 09:32:31   作者:Tzq@2018  
本文主要介紹了MySQL5.7實現(xiàn)row_number()和over()函數(shù),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

一、創(chuàng)建測試數(shù)據(jù)庫 db_test

-- 創(chuàng)建測試數(shù)據(jù)庫 db_test
CREATE DATABASE /*!32312 IF NOT EXISTS*/`db_test` /*!40100 DEFAULT CHARACTER SET utf8 */;

二、使用 db_test 數(shù)據(jù)庫

-- 使用 db_test 數(shù)據(jù)庫
USE `db_test`; /*Table structure for table `test1` */

三、先刪除測試表看看

-- 先刪除測試表看看
DROP TABLE IF EXISTS `test1`;

四、創(chuàng)建測試表

-- 創(chuàng)建測試表
CREATE TABLE `test1` ( 
  `id` int(10) NOT NULL, 
  `score` int(20) DEFAULT NULL, 
  `class` char(10) COLLATE utf8_bin DEFAULT NULL, 
  `name` char(20) COLLATE utf8_bin DEFAULT NULL, 
  PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

五、測試表刷數(shù)

-- 測試表刷數(shù)
/*Data for the table `test1` */
insert into `test1`(`id`,`score`,`class`,`name`) values 
(1,100,'語文','張三'),
(2,98,'語文','李四'),
(3,98,'語文','王五'),
(4,98,'數(shù)學','張三'),
(5,96,'數(shù)學','李四'),
(6,92,'數(shù)學','王五'),
(7,85,'數(shù)學','張三'),
(8,96,'語文','張三'),
(9,96,'語文','張三'),
(10,91,'語文','張三'),
(11,91,NULL,'張三');

六、查詢測試表

-- 查詢測試表
select * from test1;

七、MySQL5.7實現(xiàn) row_number() over()函數(shù)的功能

-- MySQL5.7實現(xiàn) row_number() over()函數(shù)的功能
SELECT id
      ,class
      ,score
      ,rank 
  FROM (SELECT b.*
              -- 定義用戶變量 @rownum 來記錄數(shù)據(jù)的行號。通過賦值語句 @rownum := @rownum + 1 來累加達到遞增行號。
              ,@rownum := @rownum+1
              -- 如果當前分組編號和上一次分組編號相同,則 @rank (對每一組的數(shù)據(jù)進行編號)值加1,否則表示為新的分組,從1開始
              ,IF(@pdept = b.class, @rank := @rank + 1, @rank := 1) AS rank
              -- 定義變量 @pdept 用來保存上一次的分組id
              ,@pdept := b.class 
              -- 這里的排序不確定是否需要,保險點還是加上吧
          FROM (SELECT * FROM test1 a ORDER BY a.class, a.score DESC) b 
              -- 初始化自定義變量值
              ,(SELECT @rownum :=0, @pdept := NULL, @rank:=0) c
         -- 該排序必須,否則結(jié)果會不對
         ORDER BY b.class, b.score DESC) result
 order by class, rank;

到此這篇關(guān)于MySQL5.7實現(xiàn)row_number() over()函數(shù)的文章就介紹到這了,更多相關(guān)MySQL5.7 row_number() over()內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • 為什么MySQL查詢速度會慢

    為什么MySQL查詢速度會慢

    這篇文章主要介紹了為什么MySQL查詢速度會慢的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • 安全快速修改Mysql數(shù)據(jù)庫名的5種方法

    安全快速修改Mysql數(shù)據(jù)庫名的5種方法

    mysql中如何重命名數(shù)據(jù)庫?這篇文章主要介紹了安全快速修改Mysql數(shù)據(jù)庫名的5種方法,需要的朋友可以參考下
    2014-04-04
  • MySQL8安裝Installer版的圖文教程

    MySQL8安裝Installer版的圖文教程

    這篇文章主要介紹了MySQL8安裝Installer版的教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • mysql下centos安裝mariadb的方法及遇到的問題

    mysql下centos安裝mariadb的方法及遇到的問題

    這篇文章主要介紹了mysql下centos安裝mariadb的方法及遇到的問題,在安裝之前要刪除之前安裝的mariadb,具體安裝方法及遇到問題解決方法,大家參考下本文
    2018-05-05
  • MySQL transaction事務安全示例講解

    MySQL transaction事務安全示例講解

    這篇文章主要為大家介紹了MySQL數(shù)據(jù)庫事務安全transaction的示例講解教程,事務就是將一組操作封裝成一個執(zhí)行單元,要么一塊執(zhí)行成功,要么一塊失敗,不存在部分執(zhí)行成功的情況。事務保證了執(zhí)行的穩(wěn)定性,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-06-06
  • Red?Hat?安裝MySQL?8.0與?Navicat的詳細過程

    Red?Hat?安裝MySQL?8.0與?Navicat的詳細過程

    這篇文章主要介紹了Red?Hat安裝MySQL8.0與Navicat,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-08-08
  • 一文搞懂MySQL XA如何實現(xiàn)分布式事務

    一文搞懂MySQL XA如何實現(xiàn)分布式事務

    MySQL如何實現(xiàn)多個MySQL數(shù)據(jù)庫更新的一致性呢?那就是MySQL XA,本文就來介紹一下MySQL XA如何實現(xiàn)分布式事務,具有一定的參考價值,感興趣的可以了解一下
    2021-11-11
  • 解決xmapp啟動mysql出現(xiàn)Error: MySQL shutdown unexpectedly.問題

    解決xmapp啟動mysql出現(xiàn)Error: MySQL shutdown unexpec

    這篇文章主要介紹了解決xmapp啟動mysql出現(xiàn)Error: MySQL shutdown unexpectedly.問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 一次mysql的.ibd文件過大處理過程記錄

    一次mysql的.ibd文件過大處理過程記錄

    mysql數(shù)據(jù)庫的每個表都有ibd和frm兩種格式的文件,ibd文件是表的數(shù)據(jù)文件,存放表的數(shù)據(jù),修改文件后綴,無法在MySQL數(shù)據(jù)庫中查詢表數(shù)據(jù),這篇文章主要給大家介紹了關(guān)于一次mysql的.ibd文件過大處理過程的相關(guān)資料,需要的朋友可以參考下
    2022-06-06
  • MySQL雙主搭建+keepalived高可用的實現(xiàn)

    MySQL雙主搭建+keepalived高可用的實現(xiàn)

    本文主要介紹了MySQL雙主搭建+keepalived高可用的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-04-04

最新評論