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

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

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

    posts - 495,comments - 227,trackbacks - 0

    我們經(jīng)常會(huì)有這樣的需求,即按照地區(qū)來分別取出每個(gè)地區(qū)排名前3的那些記錄。本文總結(jié)了幾種方法,希望大家補(bǔ)充。

     

    首先,創(chuàng)建測試用的表和數(shù)據(jù),如下:

     

    create table test

    (

    areaid int,

    score int

    )

    insert into test select 0,10

    union all select 0,20

    union all select 0,30

    union all select 0,40

    union all select 0,50

    union all select 1,10

    union all select 1,20

    union all select 1,30

    union all select 1,40

    union all select 1,50

    union all select 2,10

    union all select 2,20

    union all select 2,30

    union all select 2,40

    union all select 2,50

    go

     

    第一種方法適用于sql2000和2005,其代碼如下:

     

    select * from test a

    where checksum(*) in (select top 3 checksum(*) from test b where a.areaid=b.areaid order by score desc)

     

    第二種方法是利用sql2005的函數(shù)ROW_NUMBER,其代碼如下:

     

    WITH test1 AS

    (

        SELECT *,

        ROW_NUMBER() OVER (PARTITION BY areaid ORDER BY score desc) AS 'RowNumber'

        FROM test

    )

    SELECT *

    FROM test1

    WHERE RowNumber BETWEEN 1 AND 3;

     

    第三種方法是利用sql2005的cross apply來實(shí)現(xiàn),其代碼如下:

     

    select distinct t.* from test a

    cross apply

    (select top 3 areaid,score from test

    where a.areaid=areaid order by score desc) as T

    posted on 2012-06-07 15:12 SIMONE 閱讀(500) 評(píng)論(0)  編輯  收藏 所屬分類: SQL SERVER
    主站蜘蛛池模板: 91精品手机国产免费| 国产99视频精品免费视频76| APP在线免费观看视频| 久久久青草青青国产亚洲免观| 亚洲AV无码片一区二区三区| 免费看的黄色大片| 亚洲aⅴ天堂av天堂无码麻豆| 国产在线播放免费| 人妻巨大乳hd免费看| 亚洲午夜久久久影院| 暖暖在线视频免费视频| 久久久久亚洲AV无码专区体验| 67194国产精品免费观看| 亚洲国产综合自在线另类| 成年女人色毛片免费看| 亚洲1区2区3区精华液| 四虎影视永久免费观看| igao激情在线视频免费| 亚洲国产精品自在线一区二区| 久久免费看黄a级毛片 | 久久精品视频免费播放| 亚洲伦理一区二区| 久久久www成人免费毛片| 鲁死你资源站亚洲av| 亚洲精品网站在线观看不卡无广告| 久久精品免费大片国产大片 | 亚洲麻豆精品果冻传媒| 91情侣在线精品国产免费| 日韩亚洲人成网站| 国产精品亚洲二区在线观看| 久久综合国产乱子伦精品免费| 国产成人精品亚洲2020| 亚洲国产婷婷综合在线精品 | 免费在线观看的网站| 欧亚一级毛片免费看| 久久久久久亚洲AV无码专区| 我要看WWW免费看插插视频| 久久www免费人成看国产片| 亚洲性69影院在线观看| 亚洲А∨精品天堂在线| 中文字幕天天躁日日躁狠狠躁免费|