• SQL面试题(2)


     第一题

    1. 创建trade_orders表:
    2. create table `trade_orders`(
    3. `trade_id` varchar(255) NULL DEFAULT NULL,
    4. `uers_id` varchar(255),
    5. `trade_fee` int(20),
    6. `product_id` varchar(255),
    7. `time` varchar(255)
    8. )ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = dynamic
    9. 添加数据:
    10. INSERT INTO `trade_orders` VALUES ('20171023140109701120.0', 'ovsuXw6-7XI81U049TbjugEz912w', '168', '2017001000030.0', '2017-10-23 22:04:45');
    11. INSERT INTO `trade_orders` VALUES ('20171023220445700096.0', 'ovsuXw2TajDGuHPSF798z9FSy38c', '18', '2017001000031.0', '2017-10-23 11:55:23');
    12. INSERT INTO `trade_orders` VALUES ('20171023110103801856.0', 'ovsuXw6-7XI81U049TbjugEz912w', '', '2017002000130.0', '2017-10-28 21:19:18');
    13. INSERT INTO `trade_orders` VALUES ('20171023184746299392.0', 'ovsuXw6-7XI81U049TbjugEz912w', '19', '2017002000129.0', '2017-10-28 21:19:18');
    14. INSERT INTO `trade_orders` VALUES ('20171023184832901120.0', 'ovsuXw 2114bvpcjiR83R4dVzPw2Gg', '200', '2017002000129.0', '2023-03-30 11:44:07');
    15. INSERT INTO `trade_orders` VALUES ('20171023205014200320.0', 'ovsuXwwqmoj-YC987zDnpE9KaPs8', '300', '2017001000031.0', '2023-03-29 18:48:32');
    16. INSERT INTO `trade_orders` VALUES ('20171023110103801856.0', 'ovsuXw6-7XI81U049TbjugEz912w', '0', '2017002000130.0', '2017-10-28 21:19:18');

    题一:每个用户的首次付费时间

    1. select
    2. uers_id as 用户id,
    3. min(time) as 首次付费时间
    4. from
    5. trade_orders
    6. GROUP BY
    7. uers_id

     题二:每个用户首次付费后30天内的总付费次数:

    1. SELECT
    2. users_id AS 用户ID,
    3. COUNT(distinct trade_fee) AS 总付费次数
    4. FROM
    5. trade_orders AS t
    6. WHERE
    7. time <= DATE_ADD(
    8. (
    9. SELECT
    10. MIN(time)
    11. FROM
    12. trade_orders AS min_time
    13. WHERE
    14. min_time.users_id = t.users_id and t.trade_fee != ""), INTERVAL 30 DAY
    15. )
    16. GROUP BY
    17. users_id
    18. ORDER BY
    19. 总付费次数 desc;

     解释:

    1. 首先,从交易订单表(trade_orders)中选择用户ID(users_id)和不同交易费用(trade_fee)的数量&
  • 相关阅读:
    01 python编码语法
    2-3、bean的作用域生命周期,以及xml自动装配
    怎样搭建Vue3项目
    微信小程序的五种传值方式
    前端框架 Nextjs 实现React SEO优化
    有什么md5修改工具?快把这些工具收好
    分治算法——快排 | 归并思想
    Crazy Excel:Excel中的泥石流
    复盘:智能座舱系列文六- 它的3种交互方式之显式交互(语音以及显示)
    (附源码)springboot宠物领养系统 毕业设计 241104
  • 原文地址:https://blog.csdn.net/m0_53191230/article/details/136405188