zoukankan      html  css  js  c++  java
  • Mysql中实现row_number

        CREATE TABLE `zsl_test` (  
            `ID` INT(10) NULL DEFAULT NULL,  
            `class` INT(10) NULL DEFAULT NULL,  
            `score` INT(10) NULL DEFAULT NULL  
        )  
        COLLATE='utf8_general_ci'  
        ENGINE=InnoDB;     



        insert into zsl_test values (1,1,80);  
        insert into zsl_test values (2,1,80);  
        insert into zsl_test values (3,1,80);  
        insert into zsl_test values (4,1,80);  
        insert into zsl_test values (5,2,80);  
        insert into zsl_test values (6,2,80);  
        insert into zsl_test values (7,2,80);  
        insert into zsl_test values (8,2,80);  
        insert into zsl_test values (9,2,80);  
        insert into zsl_test values (10,2,80);  

        select id,class,score,rank from (  
        select b.id,b.class,b.score,@rownum:=@rownum+1 ,  
        if(@pdept=b.class,@rank:=@rank+1,@rank:=1) as rank,  
        @pdept:=b.class  
        from (  
        select id,class,score from zsl_test order by id   
        ) b ,(select @rownum :=0 , @pdept := null ,@rank:=0) c ) result  
        having rank <3 ;  

  • 相关阅读:
    IDEA
    elasticsearch java api
    Java-HttpUtil
    spring集成mybatis-plus
    linux语句速查
    linux切换jdk
    《Java并发编程实战》读书笔记
    设计模式六大原则
    Linux 启动管理
    Linux 日志管理
  • 原文地址:https://www.cnblogs.com/thaughtZhao/p/6194575.html
Copyright © 2011-2022 走看看