<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
    幫助了我  回復  更多評論
      

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


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 牛牛在线精品观看免费正| 亚洲天堂中文字幕| 亚洲av永久无码精品网址| 99久久久国产精品免费无卡顿| 国产A在亚洲线播放| a在线观看免费视频| 亚洲理论电影在线观看| 国产免费的野战视频| 亚洲精品不卡视频| 亚洲网站免费观看| 亚洲国产精品综合一区在线| 麻豆视频免费播放| 亚洲熟女www一区二区三区| 日韩一级视频免费观看| 免费国产黄网站在线观看动图| 亚洲va中文字幕无码| 精品乱子伦一区二区三区高清免费播放| 亚洲性久久久影院| 国产偷伦视频免费观看| 亚洲黄色在线观看| 成年人免费网站在线观看| 日韩成人精品日本亚洲| 国产美女亚洲精品久久久综合| 嫩草成人永久免费观看| 亚洲国产精品成人精品小说| 永久免费av无码网站大全| 午夜不卡AV免费| 亚洲人成电影亚洲人成9999网| 69堂人成无码免费视频果冻传媒| 亚洲熟妇无码八V在线播放| 亚洲AV成人潮喷综合网| 无码国产精品一区二区免费式芒果 | 亚洲精品无码mv在线观看网站| 日韩免费高清大片在线 | 婷婷亚洲综合五月天小说在线 | 国产成人免费高清在线观看| 中文在线观看永久免费| 亚洲成综合人影院在院播放| 国产成人在线免费观看| 51视频精品全部免费最新| 婷婷国产偷v国产偷v亚洲|