亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SQL Server實現查詢每個分組的前N條記錄

 更新時間:2022年06月14日 16:10:02   作者:springsnow  
這篇文章介紹了SQL Server實現查詢每個分組的前N條記錄,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

SQL語句查詢每個分組的前N條記錄的實現方法:

1、生成測試數據: #T

if object_id('tempdb.dbo.#T') is not null drop table #T;

create table #T (ID varchar(3),
GID int,
Author varchar(29),
Title varchar(39),
Date datetime);

insert into #T
select '001', 1, '鄒建', '深入淺出SQLServer2005開發(fā)管理與應用實例', '2008-05-10'
union all
select '002', 1, '胡百敬', 'SQLServer2005性能調校', '2008-03-22'
union all
select '003', 1, '格羅夫Groff.J.R.', 'SQL完全手冊', '2009-07-01'
union all
select '004', 1, 'KalenDelaney', 'SQLServer2005技術內幕存儲引擎', '2008-08-01'
union all
select '005', 2, 'Alex.Kriegel.Boris.M.Trukhnov', 'SQL寶典', '2007-10-05'
union all
select '006', 2, '飛思科技產品研發(fā)中心', 'SQLServer2000高級管理與開發(fā)', '2007-09-10'
union all
select '007', 2, '胡百敬', 'SQLServer2005數據庫開發(fā)詳解', '2008-06-15'
union all
select '008', 3, '陳浩奎', 'SQLServer2000存儲過程與XML編程', '2005-09-01'
union all
select '009', 3, '趙松濤', 'SQLServer2005系統(tǒng)管理實錄', '2008-10-01'
union all
select '010', 3, '黃占濤', 'SQL技術手冊', '2006-01-01'
union all
select '010', 4, '黃蛋蛋', 'SQL技術手冊蛋蛋', '2006-01-01';

2、表記錄查詢如下:

select * from #T;

結果:

3、按GID分組,查每個分組中Date最新的前2條記錄

(1)用子查詢

--1.字段ID唯一時: 
select *
from #T as T
where ID in (select top 2 ID from #T where GID=T.GID order by Date desc);

--2.如果ID不唯一時: 
select *
from #T as T
where 2>(select count(*)from #T where GID=T.GID and Date>T.Date);

(2)使用SQL Server 2005 使用新方法ROW_NUMBER()進行排位分組

select ID, GID, Author, Title, Date
from(
       select rid=row_number() over (partition by GID order by Date desc), * from #T) as T
where rid<=2;

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Sql注入工具_動力節(jié)點Java學院整理

    Sql注入工具_動力節(jié)點Java學院整理

    這篇文章主要為大家詳細介紹了Sql注入工具的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • SQL server使用自定義函數以及游標

    SQL server使用自定義函數以及游標

    最近忙于動態(tài)監(jiān)測軟件的開發(fā),處理有關標準宗地編碼和區(qū)段編碼關系,關系如下表所示
    2011-10-10
  • SQLServer 錯誤: 15404,無法獲取有關 Windows NT 組/用戶 WIN-8IVSNAQS8T7\Administrator 的信息

    SQLServer 錯誤: 15404,無法獲取有關 Windows NT 組/用戶 WIN-8IVSNAQS8T7\A

    SQLServer 錯誤: 15404,無法獲取有關 Windows NT 組/用戶 'WIN-8IVSNAQS8T7\Administrator' 的信息,錯誤代碼 0x534。 [SQLSTATE 42000] (ConnIsLoginSysAdmin)
    2021-06-06
  • SQLite數據庫管理相關命令的使用介紹

    SQLite數據庫管理相關命令的使用介紹

    本篇文章小編為大家介紹,SQLite數據庫管理相關命令的使用說明。需要的朋友參考下
    2013-04-04
  • sql中 order by 和 group by的區(qū)別

    sql中 order by 和 group by的區(qū)別

    這篇文章主要介紹了sql中 order by 和 group by的區(qū)別的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-11-11
  • Microsoft Search 服務無法啟動 解決辦法.

    Microsoft Search 服務無法啟動 解決辦法.

    嘗試用正常系統(tǒng)的注冊表項添加到非正常系統(tǒng)中去。(因為對比的兩個系統(tǒng)版本、結構相同,所此次就直接通過導入導出注冊表項進行批量修改)。
    2009-04-04
  • sql server中的任務調度與CPU深入講解

    sql server中的任務調度與CPU深入講解

    這篇文章主要給大家介紹了關于sql server中任務調度與CPU的相關資料,文中通過圖文以及示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-05-05
  • SQL Server 文件操作方法

    SQL Server 文件操作方法

    在master數據庫中,SQL Server提供系統(tǒng)擴展的存儲過程,其中有一些存儲過程的命名以xp_開頭,用于處理操作系統(tǒng)的文件。這篇文章主要介紹了SQL Server 文件操作方法,需要的朋友可以參考下
    2018-02-02
  • 分享SQL Server刪除重復行的6個方法

    分享SQL Server刪除重復行的6個方法

    SQL Server刪除重復行是我們最常見的操作之一,下面就為您介紹六種適合不同情況的SQL Server刪除重復行的方法,供您參考。
    2011-09-09
  • 使用SQL實現車流量的計算的示例代碼

    使用SQL實現車流量的計算的示例代碼

    本文主要介紹了使用SQL實現車流量的計算的示例代碼,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02

最新評論