簡體   English   中英

一列在不同列中的值

[英]Values of one column in different columns

我是SQL的新手,在查詢時需要一些幫助

我在表中的一個id有兩個金額,我希望兩個金額顯示在不同的列但同一行。 ID和Balance字段來自基本的select語句。

例如,這是我得到的數據

 ID        Balance
--------------------
2449079    2282.64
2449079    0.00
2449079    0.00
2452482    10556.96
2452482    0.00
2455481    2000.00
2455481    0.01

但我想顯示如下所示的金額。 如果只有一個余額,則其余字段應為零

 ID         BalAmt1   BalAmt2   BalAmt3    BalAmt4
----------------------------------------------------
2449079      2282.64    0         0          0
2452482      10556.96   0         0          0
2455481      2000      0.01       0          0

你嘗試了@兔子說的話嗎? 那應該工作。 這是一個工作樣本

    Declare @table1 Table(Id int, Balance float)

    Insert into @table1 values (2449079, 2282.64)
    Insert into @table1 values (2449079, 0.00)
    Insert into @table1 values (2449079, 0.00)
    Insert into @table1 values (2452482, 10556.96)
    Insert into @table1 values (2452482, 0.00)
    Insert into @table1 values (2455481, 2000.64)
    Insert into @table1 values (2455481, 0.00)

    SELECT *
    FROM (
    SELECT Id, Balance,
    ('Bal' + CAST(ROW_NUMBER() OVER(PARTITION BY Id Order by Id asc) AS VARCHAR))AS row FROM @table1
    ) as s
    PIVOT
    (
      SUM(Balance)
      FOR row IN (Bal1, Bal2, Bal3, Bal4)
  )AS pvt

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM