猿问

如何在同一行中获得相同值和不同值的总和?

表1

invno百分比成本

1 18%18.00

1 18%18.00

2 18%18.00

2 28%28.00


表2

id百分比

1 18%

2 28%


表2的percentage列值应成为输出的列标题。


在表1中,invno1有2个条目,但是的百分比值相同18%;invno2具有2个具有不同百分比值的条目。


输出


invno    percentage 18%    percentage 28%

  1           36.00             0.00

  2           18.00            28.00

到目前为止,我已经写了:


SELECT

    `invno`,

    SUM(CASE WHEN `percentage` = '18' THEN `percentage` ELSE NULL END) AS `percentage_18`,

    SUM(CASE WHEN `percentage` = '28' THEN `percentage` ELSE NULL END) AS `percentage_28`

FROM `table1`

GROUP BY `invno`

HAVING 18 IS NOT NULL AND 28 IS NOT NULL

ORDER BY `invno`

很好,但是我想动态获取百分比。


富国沪深
浏览 146回答 1
1回答
随时随地看视频慕课网APP
我要回答