查询MySQL以显示实体数和排序

查询MySQL以显示实体数和排序,mysql,Mysql,我有一个MySQL数据库,其中包含以下列: bookingdatetime (DateTime) promo (Varchar) 我想查询数据库以计算使用的不同促销代码的数量(如果促销行不是空的),并给出如下输出: promo amount appeared that month example - 01/20 13 <promocode - mm/yy> <number of times that code was used i

我有一个MySQL数据库,其中包含以下列:

bookingdatetime (DateTime)
promo (Varchar)
我想查询数据库以计算使用的不同促销代码的数量(如果促销行不是空的),并给出如下输出:

promo               amount appeared that month    
example - 01/20     13

<promocode - mm/yy> <number of times that code was used in that month>

我需要在%m%y之前获取promo中使用的promo代码,并且我不需要显示count是否有0个entires。

这应该可以做到:

选择
CONCAT(促销单“-”,日期格式(bookingdatetime,“%m/%y”)作为促销单,
计数(*)作为计数
保留地
其中pickuploc='la'
和联合(推广,,)“
分组
日期格式(bookingdatetime,“%m/%y”),
宣传片
计数(*)大于0的
订购人
日期格式(bookingdatetime,“%y”),
日期格式(bookingdatetime,“%m”)
样本输出:

promo         count
foo - 01/19   2
bar - 01/19   1
foo - 02/19   2
bar - 03/19   1
foo - 03/19   1

SQL Fiddle示例:

这应该可以做到:

选择
CONCAT(促销单“-”,日期格式(bookingdatetime,“%m/%y”)作为促销单,
计数(*)作为计数
保留地
其中pickuploc='la'
和联合(推广,,)“
分组
日期格式(bookingdatetime,“%m/%y”),
宣传片
计数(*)大于0的
订购人
日期格式(bookingdatetime,“%y”),
日期格式(bookingdatetime,“%m”)
样本输出:

promo         count
foo - 01/19   2
bar - 01/19   1
foo - 02/19   2
bar - 03/19   1
foo - 03/19   1

SQL Fiddle示例:

您尝试过count(促销)吗?计数仅计数非空值。将空白促销单保留为空值。检查更新的问题。您是否尝试过计数(促销单)?计数仅计数非空值。将空白宣传片保留为空值。检查更新的问题。