pgsql查询返回单行以查找同一日期的差异列的总数

时间:2018-07-31 10:01:48

标签: postgresql

我有一个表,其中包含折扣代码coupon_code及其供应商名称。 例如:coupon_code:abc供应商:newyork     coupon_code:def供应商:美国 另一个表的订单明细包含日期,优惠券代码,订单号 例如:

  

日期:2012-04-07优惠券代码:abc订单编号:1       日期:2012-04-08优惠券代码:abc订单编号:2       日期:2012-04-08优惠券代码:def订单号:3       日期:2012-04-09优惠券代码:abc订单号:4

如何获取每天使用的代码总数? 预期结果

  

例如:date newyork [abc]美国[def]        2012-04-07 1 0        2012-04-08 1 1        2012-04-09 1 0

1 个答案:

答案 0 :(得分:0)

尝试一下

Select date, 
       count(case when coupon_code = 'abc' then 1 else null end) as newyork,
       count(case when coupon_code = 'def' then 1 else null end) as usa
From tbl
group by date