我有这张桌子
campaignArchive
id campaignID bannerID poolID limitImpressions actualImpressions
-----------------------------------------------------------------------------
1 496 10367 7 12500 205
2 497 10367 7 12500 22860
3 498 10367 7 12500 1525
我需要总结迄今为止的实际展示次数,通常只是:
select sum(actualImpressions) as actuals from campaignArchive
但是,如果actualImpressions列值超过limitImpressions列值(如第2行),我希望使用limitImpressions列值。
希望这是有道理的。任何帮助表示赞赏。
答案 0 :(得分:4)
您需要添加case
声明。
select
sum(case when actualImpressions > limitImpressions
then limitImpressions
else actualImpressions end) as actuals
from campaignArchive