一个简单的SQL查询问题

weixin_38342574 2019-08-11 04:57:06
有两张表,

下单表buy,三个字段,userid,goodid,time
点击表click,也是这三个字段,userid,goodid,time

用户可能多次点击某个商品,最后进行下单。

现在要查询到同个用户下单同一个商品之前最后一次点击的时间,然后返回这些时间。
(同一个商品用户最多只会下单一次)

感谢!
...全文
148 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
master.zZ 2019-08-26
  • 打赏
  • 举报
回复
如果点击一次就下单了咋算
编程写手 2019-08-13
  • 打赏
  • 举报
回复
按照时间降序排列获得第一个第二个,然后计算时间
stelf 2019-08-12
  • 打赏
  • 举报
回复
你这样的设计是有问题的,点击和订单本身没有任何关系。点击了不一定下单,下单了以后还可以再点击。需要再考虑一下业务场景 粗略的语句如下,供参考 select userid, goodid, time, (select max(click.time) from click where click.userid = buy.userid and click.goodis = buy.goodid and click.time <= buy.time) as order_time from buy;

56,677

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧