如何基于日期值将行中的值分解为自己的字段

时间:2019-01-11 22:32:50

标签: mysql navicat

在下面的“表格设置”中,您将看到“金额”数据在表格的各个行中进行了细分。我正在创建一个视图,在此我想根据CreatedDt字段将每个Amount值放在其自己的字段中。因此,如果还有更多费用,则字段将为Fee1,Feet2,Feet3,依此类推。我在想办法做到这一点时遇到了麻烦。

我试图做第一个和最后一个值,最小值和最大值,不同的case语句,而且这些方法似乎都没有成功。

SELECT
`afpd`.`AppsID` AS `AppID`,
sum(case when ( `afpd`.`TxnTypeId` = 2 )  then `afpd`.`Amount` end)  as fee1 
FROM
(
    ( `appfee` `afpd` JOIN `tracking` `tra` ON ( ( `afpd`.`AppsID` = `tra`.`tci_application_id` ) ) )
    JOIN `faap` `fad` ON ( ( `afpd`.`AppsID` = `fad`.`ApplicationID` ) ) 
) 
WHERE
( `tra`.`tci_fee_submitted` = 11 ) 
GROUP BY
`afpd`.`AppsID`

表格设置:

TXNID    AppID    TXnType    Amount      CreatedDT   
1429513  3827558    2    -29.00      2017-11-01 06:18:00
1388653  3827558    2    -29.00      2017-10-15 06:24:00
1811017  3827558    2    -31.00      2018-05-02 07:07:00

以上是表格在我提取数据时的外观。如您所见,金额存储为行,我想采用此方式并创建字段字段:Fee1,Fee2,Fee3并让Fee1为最新的CreatedDt,Fee2为中间的CreatedDt,Fee3为最新的CreateDt。 / p>

0 个答案:

没有答案