中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

SQLServer怎么獲得用戶新或前n條訂單-創(chuàng)新互聯(lián)

本篇內(nèi)容介紹了“SQLServer怎么獲得用戶新或前n條訂單”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

創(chuàng)新互聯(lián)專注于青岡網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供青岡營銷型網(wǎng)站建設(shè),青岡網(wǎng)站制作、青岡網(wǎng)頁設(shè)計、青岡網(wǎng)站官網(wǎng)定制、小程序定制開發(fā)服務(wù),打造青岡網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供青岡網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

首先我們在Order表中,創(chuàng)建一個索引:

CREATEUNIQUEINDEXidx_eid_odD_oidDONOrders(EmployeeID,OrderDateDESC,OrderIDDESC)

多個OrderId是為了在OrderData相同的情況下,按訂單號倒序,是個輔助屬性。

方法1:

SELECTEmployeeID,OrderIDFROMOrdersASO1WHEREOrderID=(SELECTTOP(1)OrderIDFROMOrdersASO2WHEREO1.EmployeeID=O2.EmployeeIDORDERBYOrderDateDESC,OrderIDDESC)

假如想獲得前n條訂單信息,把=號改成IN,然后TOP(n)就可以了。

不論是取一條還是多條,即使有索引,數(shù)據(jù)多的情況下,也是最慢的。

方法2:

SELECTO.EmployeeID,O.OrderIDFROM(SELECTEmployeeID,(SELECTTOP(1)OrderIDFROMOrdersASO2WHEREE.EmployeeID=O2.EmployeeIDORDERBYOrderDateDESC,OrderIDDESC)ASOrderIDFROMEmployeesASE)ASEOINNERJOINOrdersASOONEO.OrderID=O.OrderID

方法2只能取一條信息,不能取多條信息。

在取一條的情況下,這個要比方法1快多了,因為用戶相比訂單信息要少很多。

SQLServer獲得用戶新或前n條訂單的SQL語句有哪些

方法3:

SELECTE.EmployeeID,O.OrderIDFROMEmployeesASECROSSAPPLY(SELECTTOP(1)*FROMOrdersASO1WHEREE.EmployeeID=O1.EmployeeIDORDERBYO1.OrderDateDESC,O1.OrderIDDESC)ASO

這個應(yīng)用到了SQLServer2005或更高版本的一些新特性,這個效率要比方法2還好。

假如想取得多條,只需更改TOP(n)即可。

方法4:

SELECTO1.EmployeeID,O1.OrderIDFROMOrdersO1JOIN(SELECTROW_NUMBER()OVER(PARTITIONBYEmployeeIDORDERBYOrderDateDESC,OrderIDDESC)ASRowNumber,*FROMOrdersASOT)ASO2ONO1.OrderID=O2.OrderIDWHEREO2.RowNumber=1

這個ROW_NUMBER函數(shù)也是在SQLServer2005后新增的,使用這個和方法3查不多,甚至比3更好,但要注意一點(diǎn)是先按EmployeeID分區(qū),然后再排序。

結(jié)合以上方法,建議用方法3。

“SQLServer怎么獲得用戶新或前n條訂單”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

網(wǎng)頁題目:SQLServer怎么獲得用戶新或前n條訂單-創(chuàng)新互聯(lián)
分享路徑:http://m.rwnh.cn/article12/dsdsdc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、企業(yè)建站移動網(wǎng)站建設(shè)、做網(wǎng)站、網(wǎng)站策劃、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
大足县| 衡阳市| 正定县| 瑞金市| 威信县| 札达县| 枣强县| 新和县| 米林县| 津市市| 湘乡市| 阿克陶县| 泸水县| 宁德市| 隆林| 都江堰市| 岳阳县| 舒城县| 兰州市| 资源县| 亚东县| 新宾| 大同县| 梅河口市| 嘉祥县| 永善县| 凌海市| 芒康县| 石河子市| 花莲市| 上饶县| 华安县| 车险| 郑州市| 泗阳县| 个旧市| 通河县| 枣阳市| 北京市| 安多县| 原平市|