hive的SQL练习3

根据如上表格信息,实现如下需求:

  1. 查询五一期间(2023-05-01 ~ 2023-05-07),每个餐厅的订单总数量及排名
  2. with t as (
    select *,
    count(1) over(partition by restaurant_id) countNum
    from orders where substr(order_date,1,10)
    between '2023-05-01' and '2023-05-07'
    )
    select distinct restaurant_id,countNum,dense_rank() over (order by countNum desc) pm from t
    order by pm ;
  3. 查看最近一个月内在一家餐厅重复购买 3 次以上的餐厅名字、用户名字、购买次数
  4. with t as (
    select restaurant_id,user_id,
    count(1) buyCount
    from orders
    where substr(order_date,1,10) >= add_months(`current_date`(),-1)
    and substr(order_date,1,10) <=`current_date`()
    group by restaurant_id,user_id
    having buyCount >=3
    )
    select
    r.restaurant_name,
    u.user_name,
    t.buyCount
    from t left join restaurants r on t.restaurant_id=r.restaurant_id
    left join `users` u on t.user_id=u.user_id;
相关推荐
是真的小外套31 分钟前
网络安全实战第15期:SQL注入根源之一条拼接语句的警示
sql·安全·web安全
freejackman2 小时前
【架构篇】双遍历 + 多栈协同:手撸 SQL 血缘引擎的架构思考
java·大数据·数据库·hive·sql·架构·spark
陈年老古董4 小时前
ClickHouse 单机搭建记录
hive·笔记·学习·clickhouse·硬件架构
Gl�ria4 小时前
Hadoop 速刷:HDFS / MR / YARN / Spark / Hive
hadoop·hdfs·mr
陈年老古董4 小时前
Spark 3.1.3 集群搭建 + Spark-SQL 整合 Hive 记录
hive·sql·spark
FserSuN5 小时前
Hive 分区表存储与查询优化学习总结
hive·hadoop·学习
念何架构之路5 小时前
Go 标准库 database/sql 详解
数据库·sql·golang
Decay__18 小时前
09_MySQL 闪回与时间点恢复 —— binlog 回放、mysqlbinlog、PITR 与误删恢复
运维·数据库·sql·mysql·架构
梦影_20 小时前
MySQL进阶教程(五)—— SQL调优(下)
android·大数据·数据库·后端·sql·mysql·database
呆萌很1 天前
达梦(DM8)数据库常用SQL
数据库·sql