我們在生產實踐中經常會有這樣的需求:分組編號。
如下有乙個城市區域表region:
我們需要對上表region按city分組,對region進行排序,得到如下結果:
具體sql如下:
1 select city,region,此方法主要是運用row_number()開窗函式通過對city進行分組後,再對region進行排序(預設按首字母拼音排序),最終得到我們想要的結果。2 right('100'+row_number()over(partition by city order by region),2) as region_no
3 from region
當然,還有一種方法同樣可以實現:
select city,region,region_no=right(100+(select count(1)+1 from region where city=a.city and region
from region a
SQL分組排序
不得不承認,我腦子梗塞的很嚴重。表 gcc bloginfo blogid uid blogtitle createtime issketch checkright 1 1 hello 2010 04 01 2 1 2 1 hello2 2010 04 02 2 1 3 1 hello3 2010 ...
SQL語句 分組統計
一 教師號 星期號 是否有課 有 有 有 有 有 寫一條sql語句讓你變為這樣的表 教師號 星期一 星期二 星期三 各星期下的數字表示 對應的教師在星期幾已經排的課數 答案是 select 教師號 sum case when 星期號 1then 是否有課 else 0end as 星期一 sum c...
sql實現分組排序
今天在公司遇到了乙個要分組排序的功能不知道怎麼實現,所以下班了想了下,大家分享了 if object id tempdb.temptbl is not null drop table temptbl create table temptbl store id varchar 4 kind char,...