需求:取出每種分類裡面的銷售前3甲的產品資訊
表設計如下圖:
資料如下:
兩種方法可以實現:
1.select * from
(select row_number() over(partition by categoryid order by salenum desc) as saleseq,* from productsale
) awhere saleseq < 4
2.select * from dbo.productsale t
where productid in
(select top 3 productid from dbo.productsale m
where m.categoryid = t.categoryid
order by salenum desc
)order by t.categoryid, t.salenum desc
結果如下圖:
說明:此2種方法可以在前3甲的產品銷售數量不相等時準確查詢出前3甲的產品銷售資訊,但如果前3甲中有銷售數量相同的產品,
則有可能是少取了另一些產品,比如銷售第一1種產品,銷售第二1種產品,銷售第三3種產品,
則會在銷售第三的3種產品中取乙個產品返回,其實是少了並列的2種產品的,此處需要注意。
超級實用的一種型別 匿名型別
既然說到匿名範例超等適用,得要找到場景來壓服一下,假如人人玩過php,外面有乙個全能的聯絡關係陣列array,任你在聯絡關係陣列array外面怎樣寫,均可以或許用json encode來天生json,異常異常的便利。看到如許的json是不是有一種很爽的感到?是的,確其實咱們開闢中異常的適用,那末成績...
go 函式也是一種型別, 匿名函式
函式也是一種型別 package main import fmt 自定義函式型別 接受兩個int引數,返回int型別 type op func func int,int int func main func test func 100,200 fmt.println 匿名函式100 200 resu...
php7 引用成為一種型別
a abc is ref 0 ref count 1 b a is ref 0 ref count 2 c a is ref 1 ref count 2 即a c 共用乙個zval,b單獨用乙個zval 當然 ref count為1 c 2 a range 10000 b a count a1 相當...