在下面的“表格设置”中,您将看到“金额”数据在表格的各个行中进行了细分。我正在创建一个视图,在此我想根据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>