SqlServer2012中First_Value函數(shù)簡(jiǎn)單分析
First_Value返回結(jié)果集中某列第一條數(shù)據(jù)的值,跟TOP 1效果一樣,比較簡(jiǎn)單的一個(gè)函數(shù)
先貼測(cè)試用代碼
DECLARE @TestData TABLE( ID INT IDENTITY(1,1), Department VARCHAR(20), LastName VARCHAR(20), Rate FLOAT ) INSERT INTO @TestData(Department,LastName,Rate) SELECT 'Document Control','Arifin',17.7885 UNION ALL SELECT 'Document Control','Norred',16.8269 UNION ALL SELECT 'Document Control','Kharatishvili',16.8269 UNION ALL SELECT 'Information Services','Chai',10.25 UNION ALL SELECT 'Information Services','Berge',10.25 UNION ALL SELECT 'Information Services','Trenary',50.4808 UNION ALL SELECT 'Information Services','Conroy',39.6635 UNION ALL SELECT 'Information Services','Ajenstat',38.4615 UNION ALL SELECT 'Information Services','Wilson',38.4615 UNION ALL SELECT 'Information Services','Connelly',32.4519 UNION ALL SELECT 'Information Services','Meyyappan',32.4519 SELECT * FROM @TestData

下邊使用FIRST_VALUE函數(shù),創(chuàng)建一列新列,返回結(jié)果集中第一行的LastName值,這個(gè)所謂的第一行受OVER里的ORDER BY影響,看圖和代碼:
以ID正序取

以ID倒序取

如果SQL腳本中使用了PARTITION分區(qū)函數(shù),則FIRST_VALUE返回每個(gè)分區(qū)內(nèi)的首條數(shù)據(jù)值,看演示
這里以Department分區(qū),則整個(gè)數(shù)據(jù)集被分成了兩部分:Information Services和Document Control兩塊,這時(shí)FIRST_VALUE分別返回兩塊分區(qū)內(nèi)的首條數(shù)據(jù)值,同樣的受ORDER BY關(guān)鍵字的影響,

再看一個(gè)受ORDER BY 影響的例子

與FIRST_VALUE函數(shù)同時(shí)出現(xiàn)的還有一個(gè),SECOND_VALUE?NO,沒有這個(gè)函數(shù)啊,但是有一LAST_VALUE,怎么函數(shù)怎么使用,不打算再單獨(dú)起一篇文章了,LAST_VALUE嗯
相關(guān)文章
Sql server中內(nèi)部函數(shù)fn_PhysLocFormatter存在解析錯(cuò)誤詳解
這篇文章主要給大家介紹了關(guān)于Sql server中內(nèi)部函數(shù)fn_PhysLocFormatter存在解析錯(cuò)誤的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-09-09
SqlServer數(shù)據(jù)庫提示 “tempdb” 的日志已滿 問題解決方案
本文主要講述了筆者在執(zhí)行sql語句的過程中,遇到提示“數(shù)據(jù)庫 'tempdb' 的日志已滿。請(qǐng)備份該數(shù)據(jù)庫的事務(wù)日志以釋放一些日志空間?!钡慕鉀Q過程,希望對(duì)大家有所幫助2014-08-08
SSB(SQLservice Service Broker) 入門實(shí)例介紹
前兩天用了 MSsql里的 SSB委托機(jī)制,做了一個(gè)消息分發(fā)的小功能,在這里簡(jiǎn)單跟大家分享一下方法跟實(shí)例2013-04-04
多表關(guān)聯(lián)同時(shí)更新多條不同的記錄方法分享
因?yàn)轫?xiàng)目要求實(shí)現(xiàn)一次性同時(shí)更新多條不同的記錄的需求,和同事討論了一個(gè)比較不錯(cuò)的方案,這里供大家參考下2011-10-10
SQL語句實(shí)現(xiàn)查詢并自動(dòng)創(chuàng)建Missing Index
這篇文章主要介紹了SQL語句實(shí)現(xiàn)查詢并自動(dòng)創(chuàng)建Missing Index,本文直接給出SQL實(shí)現(xiàn)腳本,需要的朋友可以參考下2015-07-07
Activiti-Explorer使用sql server數(shù)據(jù)庫實(shí)現(xiàn)方法
本文主要介紹Activiti-Explorer使用sql server數(shù)據(jù)庫,這里整理了詳細(xì)的資料來說明Activiti-Explorer使用SQL Server的實(shí)例,有興趣的小伙伴可以參考下2016-08-08

