我有一個看起來像這樣的資料庫:
----------------
| Account Number |
----------------
| A0001 |
| A0001 |
| A0001 |
| A0002 |
| A0003 |
| A0003 |
----------------
我需要創建一個列,該列包含帳號出現的次數而不更改行數。
我知道
SELECT Account Number, COUNT(*) AS Counts
FROM database
GROUP BY Account Number
回報
---------------- --------
| Account Number | Counts |
---------------- --------
| A0001 | 3 |
| A0002 | 1 |
| A0003 | 2 |
---------------- --------
但我需要看起來像這樣的東西:
---------------- --------
| Account Number | Counts |
---------------- --------
| A0001 | 3 |
| A0001 | 3 |
| A0001 | 3 |
| A0002 | 1 |
| A0003 | 2 |
| A0003 | 2 |
---------------- --------
我正在使用 Microsoft SQL Server。
uj5u.com熱心網友回復:
您可以在window function此處使用 count 作為 a :
Select AccountNumber,
count(*) over (partition by AccountNumber) as counts
from Table
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/390526.html
標籤:sql sql-server 查询语句
