mysql支付成功订单数超过10_查询每天的’订单数 ’以及 ‘实付金额’的一条 sql...

本文通过实例讲述了如何使用SQL查询每天的支付成功订单数和实付金额,考虑到订单可能在创建后隔天才付款的情况,通过LEFT JOIN结合GROUP BY实现了这一查询需求。
摘要由CSDN通过智能技术生成

写在前面

昨晚一个朋友让我帮忙写一条 sql, 说是有一张订单表, 要查询出每天有多少人下单, 有多少人付款。听到这里可能很多人以为用 group by 分组, count 和 sum统计函数,问题就解决了。例如:

select 下单时间,count(下单时间)as 订单数量, sum(付款金额) as 实付金额 from 订单表 group by 下单时间

但是我们要考虑的是,用户有可能今天下订单,但是到第二天或者第三天才付款。这个时候这条订单的付款数据 要算到 第二天或者第三天去。有可能因为我的表达有问题,有的人没听懂,下面就贴出详细过程。

解决过程

1. 创建表

根据他的描述,我临时建了一张表。 当然,实际的订单表很复杂, 为了简化并突出重点,我只抽出了其中几个字段,字段名和类型也是随便写的。表结构如下:

CREATE TABLE `tb_order` (

`id` varchar(32) NOT NULL DEFAULT '', -- id

`status` varchar(20) DEFAULT NULL, -- 订单状态

`createtime` datetime DEFAULT NULL, -- 订单创建时间

`paytime` datetime DEFAULT NULL, -- 订单支付时间

`total` decimal(10,0) DEFAULT NULL, -- 订单支付金额

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1;

2. 插入数据

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值