以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]统计所有客户最后一次订购的日期  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=169304)

--  作者:panyongming
--  发布时间:2021/6/11 10:52:00
--  [求助]统计所有客户最后一次订购的日期
假设有一张客户订单表,表中包括 日期,客户,产品,数量等列,我想用sql语句在一张表中统计出每个客户最后一次订购的日期和产品,不知如何实现,特此请教!
[此贴子已经被作者于2021/6/11 11:03:08编辑过]

--  作者:有点蓝
--  发布时间:2021/6/11 11:03:00
--  
select 客户,max(日期) as 最后一次订购的日期 from {客户订单表} group by 客户
--  作者:panyongming
--  发布时间:2021/6/11 11:12:00
--  

谢谢,蓝老师,那如果还要统计所有客户最后一次订购的日期和订购的数量呢

[此贴子已经被作者于2021/6/11 11:17:42编辑过]

--  作者:有点蓝
--  发布时间:2021/6/11 11:23:00
--  
select a.* from {客户订单表} as a inner join (select 客户,max(日期) as 最后一次订购的日期 from {客户订单表} group by 客户) as b on a.客户=b.客户 where a.日期 = b.最后一次订购的日期
--  作者:panyongming
--  发布时间:2021/6/15 15:58:00
--  

蓝老师,如果客户订单表分成2张表,1张是订单表(包括 订单号,日期,客户)一张是订单明细表(包括 订单号,产品,数量),要进行前面的统计该如何编写代码?


--  作者:有点蓝
--  发布时间:2021/6/15 16:00:00
--  
select a.*,b.* from {客户订单表} as a inner join (select 客户,max(日期) as 最后一次订购的日期 from {客户订单表} group by 客户) as b on a.客户=b.客户 and a.日期 = b.最后一次订购的日期 inner join {订单明细表} as c on a.订单号=c.订单号
--  作者:panyongming
--  发布时间:2021/6/16 8:51:00
--  

如果是每个产品最后一次订购的数量呢


--  作者:有点蓝
--  发布时间:2021/6/16 9:20:00
--  
请上传实例说明