我正在尝试编写一个查询,该查询将捕获 0 和 50 的计数以形成第 1 组贷款,捕获 51 和 100 的计数以计算第 2 组贷款等。我正在尝试以 50 笔增量贷款进行计数每个银行并以 50 为一组进行分组。我需要列出所有贷款号码。
SELECT DISTINCT
DLR_NAME,
ACCOUNT,
COUNT(*) AS GROUPCOUNT,
CASE WHEN COUNT BETWEEN 1 AND 50 Then 'Group 1'
WHEN COUNT BETWEEN 51 AND 100 THEN 'Group 2'
类似这样的事情。我目前在这方面还是个新手。
最佳答案
我不确定我是否正确理解了您的意思,但请尝试以下操作:
declare @GroupSize decimal = 50.0
select BankID,
LoanID,
floor((_row - 1) / @GroupSize) as [GroupNum]
from (
select BankID,
LoanID,
row_number() over (partition by BankID order by BankID, LoanID) as _row
from Loan
) a
关于sql - 按贷款数量分组(50),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31213259/