首页 > 解决方案 > sql查询中的客户对账单历史报表

问题描述

我正在尝试获取客户摘要示例日期、贷方、金额和日期、借方、金额

这是我的编码,我只得到最后一行

将@Temp 声明为表(CustomerName NVARCHAR(50)、CreditNumber NVARCHAR(50)、CreditDate DATETIME、CreditAmount DECIMAL(18, 2)、Credit NVARCHAR(50)、DebitNumber NVARCHAR(50)、DebitDate DATETIME、debitAmount DECIMAL(18, 2) ), 余额 DECIMAL(18, 2), 借方 NVARCHAR(50) )

--SELECT * FROM @Temp







DECLARE @numrows INT
SELECT @numrows = COUNT(*)
FROM   CustomerPayment
WHERE  Cus_ID = 2




DECLARE @LoopCount INT = 1
DECLARE @count INT = @numrows

    
        --SELECT @RowCount

DECLARE @CustomerName AS NVARCHAR(50)
DECLARE @CreditNumber AS NVARCHAR(50)
DECLARE @CreditDate AS DATETIME
DECLARE @CreditAmount AS DECIMAL(18, 2)
DECLARE @Credit AS NVARCHAR(50)
DECLARE @DebitNumber AS NVARCHAR(50)
DECLARE @DebitDate AS DATETIME
DECLARE @debitAmount AS DECIMAL(18, 2)
DECLARE @Balance AS DECIMAL(18, 2)
DECLARE @Debit AS NVARCHAR(50)


    
   -- WHERE  cp.Cus_ID = 2
    


WHILE (@LoopCount <= @count)
BEGIN
    
SELECT @CreditNumber = cp.PaymentNo
    FROM   CustomerPayment AS cp
    
    INSERT INTO @Temp
      (
        CustomerName,
        CreditNumber,
        CreditDate,
        CreditAmount,
        Credit,
        DebitNumber,
        DebitDate,
        debitAmount,
        Balance,
        Debit
      )
    VALUES
      (
        @CustomerName,
        @CreditNumber,
        @CreditDate,
        @CreditAmount,
        @Credit,
        @DebitNumber,
        @DebitDate,
        @debitAmount,
        @Balance,
        @Debit
      )
    SET @LoopCount = @LoopCount + 1
END

SELECT *
FROM   @Temp

标签: sqlc#-4.0sql-query-store

解决方案


推荐阅读