【问题标题】:Displaying a resultset value in another column mysql在另一列mysql中显示结果集值
【发布时间】:2016-03-24 23:50:38
【问题描述】:

我是 MYSQL 新手...帮我解决这个问题...

我有两个类似的结果集

第一个结果集

 NO,     TYPE,  FEE_AMT
'2156', 'FTP2', 100.00
'2156', 'FTP4', 200.00
'2156', 'FTP5', 100.00
'2156', 'FTP6', 100.00
'2156', 'FTP3', 100.00

第二个结果集

 NO,     TYPE,  FEE_AMT
'2156', 'FTP2', 100.00
'2156', 'FTP4', 200.00
'2156', 'FTP1', 100.00
'2156', 'FTP6', 100.00
'2156', 'FTP3', 100.00

我想将一列中的所有 FEE_AMT 加起来为feesum。 我的结果包含 type='FTP5' 我想在下一列中将相应的 fee_amt 显示为 abc_fee 否则 abc_amt=0;

预期输出是:

对于第一个结果集

feesum abc_amt
600    100

对于第二个结果集

feesum abc_amt
600    0

我知道总和的公式,但不知道下一列... 在此先感谢... :)

【问题讨论】:

    标签: mysql sql select sum case


    【解决方案1】:

    试试这个:

    SELECT SUM(table1.FEE_AMT) AS feesum, 
           SUM(CASE WHEN table1.TYPE = 'FTP5' THEN table1.FEE_AMT ELSE 0 END) AS abc_amt
    FROM table1
    WHERE table1.NO = '2156';
    

    【讨论】:

    • @MonickaAkilan 你使用 SUM 函数是因为你想对不同的记录求和。
    猜你喜欢
    • 1970-01-01
    • 2013-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    • 2015-09-23
    相关资源
    最近更新 更多