如何显示一个月内每天的多个结果计数
How to show multiple results count for each day in one month
我不熟悉查询语言,尤其是mysql。所以我的测试项目有 2 table,其中包含一些虚拟数据。这是 table:
出口table
订单table
我想统计状态,将其分为两个不同的列,状态和 status_1。状态 1 标准是 order.status = 1 和 status_1 = 2。下图是预期结果
预期结果
我只试过这个因为我不知道如何获得 status_1 值
如您所见:
没有status_1
结果如下:
有人可以帮我解决这个问题吗?或者给点线索?还是不懂逻辑
在 count() 函数中使用 case 语句来检索所需的结果。
-- MySQL
SELECT o.name, od.tdate
, COUNT(CASE WHEN od.status = 1 THEN 1 END) status_1
, COUNT(CASE WHEN od.status = 2 THEN 1 END) status_2
FROM outlet_tbl o
INNER JOIN order_tbl od
ON o.id = od.outlet_id
GROUP BY o.name, od.tdate
请从https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=d7c74940fccf9149132dfc4e90072d06
检查
我不熟悉查询语言,尤其是mysql。所以我的测试项目有 2 table,其中包含一些虚拟数据。这是 table:
出口table
订单table
我想统计状态,将其分为两个不同的列,状态和 status_1。状态 1 标准是 order.status = 1 和 status_1 = 2。下图是预期结果
预期结果
我只试过这个因为我不知道如何获得 status_1 值
如您所见:
没有status_1
结果如下:
有人可以帮我解决这个问题吗?或者给点线索?还是不懂逻辑
在 count() 函数中使用 case 语句来检索所需的结果。
-- MySQL
SELECT o.name, od.tdate
, COUNT(CASE WHEN od.status = 1 THEN 1 END) status_1
, COUNT(CASE WHEN od.status = 2 THEN 1 END) status_2
FROM outlet_tbl o
INNER JOIN order_tbl od
ON o.id = od.outlet_id
GROUP BY o.name, od.tdate
请从https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=d7c74940fccf9149132dfc4e90072d06
检查