<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    大鳥的學習樂園
    路漫漫其修遠兮,吾將上下而求索
    posts - 26,comments - 27,trackbacks - 0
    Mysql 的rank 函數如何實現

    表特征:
    mysql> select * from test;
    +------+------+
    | a    | b    |
    +------+------+
    |    1 |   20 |
    |    1 |   21 |
    |    1 |   24 |
    |    2 |   20 |
    |    2 |   32 |
    |    2 |   14 |
    +------+------+
    6 rows in set (0.00 sec)

    現在,我們以a分組,查詢b列最大的2個值。 這條sql要怎么寫了?



    1.創建表
    Create Table: CREATE TABLE `sam` (
      `a` int(11) DEFAULT NULL,
      `b` int(11) DEFAULT NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8

    2.插入模擬數據
    INSERT INTO `sam` VALUES (1,10),(1,15),(1,20),(1,25),(2,20),(2,22),(2,33),(2,45);
    +------+------+
    | a    | b    |
    +------+------+
    |    1 |   10 |
    |    1 |   15 |
    |    1 |   20 |
    |    1 |   25 |
    |    2 |   20 |
    |    2 |   22 |
    |    2 |   33 |
    |    2 |   45 |
    +------+------+

    3.SQL實現
    select a,b,rownum,rank from
        (select ff.a,ff.b,@rownum:=@rownum+1 rownum,if(@pa=ff.a,@rank:=@rank+1,@rank:=1) as rank,@pa:=ff.a
        FROM
           (select a,b from sam group by a,b order by a asc,b desc) ff,(select @rank:=0,@rownum:=0,@pa=null) tt) result
        having rank <=2;

    4.結果:
    +------+------+--------+------+
    | a    | b    | rownum | rank |
    +------+------+--------+------+
    |    1 |   25 |      1 |    1 |
    |    1 |   20 |      2 |    2 |
    |    2 |   45 |      5 |    1 |
    |    2 |   33 |      6 |    2 |
    +------+------+--------+------+
    4 rows in set (0.00 sec)
    posted on 2011-01-28 13:28 大鳥 閱讀(4048) 評論(2)  編輯  收藏

    FeedBack:
    # re: Mysql 的rank 函數如何實現
    2011-12-16 11:29 | adfgsf
    他媽的也不知你們誰抄誰的?  回復  更多評論
      
    # re: Mysql 的rank 函數如何實現
    2012-01-13 17:20 | rank
    幫助了我  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲熟妇av一区二区三区下载| 国产精品亚洲产品一区二区三区| 青青草免费在线视频| 亚洲av日韩av天堂影片精品| 最近更新免费中文字幕大全| 亚洲s色大片在线观看| 免费黄网站在线观看| 亚洲国产老鸭窝一区二区三区| 无人在线观看免费高清| 又粗又硬免费毛片| 欧洲乱码伦视频免费国产| 又粗又大又黑又长的免费视频| 亚洲另类古典武侠| 国产va在线观看免费| 亚洲综合无码一区二区| 麻豆一区二区免费播放网站| 亚洲人成色4444在线观看| 永久看日本大片免费35分钟| 亚洲av无码片在线观看| 日韩精品免费电影| EEUSS影院WWW在线观看免费| 免费理论片51人人看电影| 日韩免费在线中文字幕| 人人狠狠综合久久亚洲88| 95老司机免费福利| 亚洲国产一区二区三区在线观看| 国产片免费在线观看| 国产免费爽爽视频在线观看| 亚洲一区无码中文字幕乱码| 四虎免费大片aⅴ入口| 久久99久久成人免费播放| 亚洲一区二区在线视频| 永久黄网站色视频免费| 99在线视频免费观看| 亚洲国产激情在线一区| 亚洲男人在线无码视频| 18禁美女黄网站色大片免费观看| 亚洲精华国产精华精华液好用| 亚洲码国产精品高潮在线| 久久精品免费一区二区喷潮| 一级毛片成人免费看a|