久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

如何在選擇中增加計數器

How to increase counter in select(如何在選擇中增加計數器)
本文介紹了如何在選擇中增加計數器的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我有這種情況-

Column A
    1
    0
    0
    0
    1
    0
    0
    0
    0
    1
    0
    1
    0
    0 
    1
    0

我想要這樣的東西-

Column A                      Column B
    1                         1
    0                         1
    0                         1
    0                         1
    1                         2
    0                         2
    0                         2
    0                         2
    0                         2
    1                         3
    0                         3
    1                         4
    0                         4
    0                         4
    1                         5
    0                         5

就像在 A 列中每次出現 1 一樣,我們將 B 列中的數字增加一.我想在一個選擇中有這個.我不能為此使用循環.

Its like for each occurance of 1 in column A we are increasing the number in column B by one. I want to have this in a select. I can't use loop for this.

我使用的是 SQL-Server 2008 R2.任何人都可以請告訴我它是如何做到的.提前致謝.

I am using SQL-Server 2008 R2. Can anyone please give me idea how it can done. Thanks in advance.

推薦答案

使用 cte 和窗口函數 Row_Number()... 但是,我要注意,最好在 OVER 子句中替換 (Select NULL)具有適當的順序(即身份 int、日期時間).

With a cte and window function Row_Number()... However, I should note that it would be best if you replace (Select NULL) in the OVER clause with a proper sequence (ie identity int, datetime).

Declare @YourTable table (ColumnA int)
Insert Into @YourTable values (1),(0),(0),(0),(1),(0),(0),(0),(0),(1),(0),(1),(0),(0),(1),(0)

;with cte as (
    Select *,RN=Row_Number() over (Order By (Select Null)) from @YourTable
)
Select A.ColumnA
      ,ColumnB = sum(B.ColumnA)
 From  cte A
 Join  cte B on (B.RN<=A.RN)
 Group By A.ColumnA,A.RN
 Order By A.RN

退貨

ColumnA ColumnB
1       1
0       1
0       1
0       1
1       2
0       2
0       2
0       2
0       2
1       3
0       3    
1       4
0       4
0       4
1       5
0       5

這篇關于如何在選擇中增加計數器的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Modify Existing decimal places info(修改現有小數位信息)
The correlation name #39;CONVERT#39; is specified multiple times(多次指定相關名稱“CONVERT)
T-SQL left join not returning null columns(T-SQL 左連接不返回空列)
remove duplicates from comma or pipeline operator string(從逗號或管道運算符字符串中刪除重復項)
Change an iterative query to a relational set-based query(將迭代查詢更改為基于關系集的查詢)
concatenate a zero onto sql server select value shows 4 digits still and not 5(將零連接到 sql server 選擇值仍然顯示 4 位而不是 5)
主站蜘蛛池模板: 一区二区福利视频 | 国产日韩欧美综合 | 国内精品久久久久 | 中文字幕精品一区二区三区在线 | 国产精品高潮呻吟久久久久 | 一区二区三区在线免费 | 黑人巨大精品欧美一区二区一视频 | 做a视频| 91精品国产欧美一区二区 | 久久久妇女国产精品影视 | 精品国产不卡一区二区三区 | 日本三级线观看 视频 | 亚洲女人天堂网 | h视频在线观看免费 | 精久久久| 中文字幕在线一区 | 高清视频一区二区三区 | 日本福利在线观看 | 成人一区二区三区在线观看 | 久久久精品网 | 日韩a在线 | 日韩1区 | 人人操日日干 | 国产精品国产成人国产三级 | 日韩电影免费在线观看中文字幕 | 99热在这里只有精品 | 激情a| 成人高清视频在线观看 | 精品久久久久久久久久久久久久 | 亚洲视频一区 | 中文字幕亚洲视频 | 日韩有码一区 | 久久中文视频 | 国产美女久久 | 人妖av| 日韩精品人成在线播放 | 亚洲 一区| 在线欧美a | 亚洲精品一区二区二区 | 国产精品久久久亚洲 | 九色国产 |