首页 > 其他分享 >1174. 即时食物配送 II

1174. 即时食物配送 II

时间:2023-05-12 10:47:38浏览次数:38  
标签:customer 1174 配送 08 II 订单 2019 date id

【题目】

配送表: Delivery

+-----------------------------+---------+
| Column Name                 | Type    |
+-----------------------------+---------+
| delivery_id                 | int     |
| customer_id                 | int     |
| order_date                  | date    |
| customer_pref_delivery_date | date    |
+-----------------------------+---------+
delivery_id 是表的主键。
该表保存着顾客的食物配送信息,顾客在某个日期下了订单,并指定了一个期望的配送日期(和下单日期相同或者在那之后)。

 

如果顾客期望的配送日期和下单日期相同,则该订单称为 「即时订单」,否则称为「计划订单」。

「首次订单」是顾客最早创建的订单。我们保证一个顾客只会有一个「首次订单」。

写一条 SQL 查询语句获取即时订单在所有用户的首次订单中的比例。保留两位小数。

 

查询结果如下所示:

Delivery 表:
+-------------+-------------+------------+-----------------------------+
| delivery_id | customer_id | order_date | customer_pref_delivery_date |
+-------------+-------------+------------+-----------------------------+
| 1           | 1           | 2019-08-01 | 2019-08-02                  |
| 2           | 2           | 2019-08-02 | 2019-08-02                  |
| 3           | 1           | 2019-08-11 | 2019-08-12                  |
| 4           | 3           | 2019-08-24 | 2019-08-24                  |
| 5           | 3           | 2019-08-21 | 2019-08-22                  |
| 6           | 2           | 2019-08-11 | 2019-08-13                  |
| 7           | 4           | 2019-08-09 | 2019-08-09                  |
+-------------+-------------+------------+-----------------------------+

Result 表:
+----------------------+
| immediate_percentage |
+----------------------+
| 50.00                |
+----------------------+
1 号顾客的 1 号订单是首次订单,并且是计划订单。
2 号顾客的 2 号订单是首次订单,并且是即时订单。
3 号顾客的 5 号订单是首次订单,并且是计划订单。
4 号顾客的 7 号订单是首次订单,并且是即时订单。
因此,一半顾客的首次订单是即时的。

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/immediate-food-delivery-ii
【思路】

用子查询,找最小的一个订单日期来拿到首条记录,然后在首条记录中进行计算

 

【代码】

SELECT ROUND(100*SUM(order_date=customer_pref_delivery_date)/COUNT(*),2) as immediate_percentage
FROM Delivery
WHERE (customer_id,order_date) 
IN 
(
    SELECT customer_id,MIN(order_date)
    FROM Delivery
    GROUP BY customer_id
)

 

标签:customer,1174,配送,08,II,订单,2019,date,id
From: https://www.cnblogs.com/End1ess/p/17393085.html

相关文章

  • 122. 买卖股票的最佳时机 II
    题目描述给你一个整数数组prices,其中 prices[i]表示某支股票第i天的价格。在每一天,你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有一股股票。你也可以先购买,然后在同一天出售。返回你能获得的最大利润 。来源:力扣(LeetCode)链接:https://leetcode......
  • leetcode 1084 销售分析III
    leetcode1084销售分析IIIselectdistinctp.product_id,p.product_namefromProductpleftjoinSalessonp.product_id=s.product_idwheres.product_idnotin(selectproduct_idfromSaleswheresale_date<'2019-01-01'orsale_d......
  • AMD Xilinx AC701 单板运行IIC EEPROM例程
    概述AMDXilinxVitis内部集成了各种外设的例程,为工程师提供了快速上手的代码。AMDXilinx有很多开发板。各种单板的硬件参数不一定完全一致,有时需要根据单板硬件设计、Vivado中的BlockDesign设计,修改外设例程的参数。IICEEPROM例程更改。本文描述在AMDXilinxAC701单板运......
  • LeetCode 541. 反转字符串 II
    题目链接:LeetCode541.反转字符串II题意:给定一个字符串s和一个整数k,从字符串开头算起,每计数至2k个字符,就反转这2k字符中的前k个字符。如果剩余字符少于k个,则将剩余字符全部反转。如果剩余字符小于2k但大于或等于k个,则反转前k个字符,其余字符保持原样。......
  • 代码随想录算法训练营第七天 | 454.四数相加II 、383.赎金信 
    ......
  • Visual Studio 2022 设置 IIS Express 运行在 32 位模式
    当:1、在VisualStudio2022中开发需要访问Access数据库的网站项目时,遇到错误:未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。2、在VisualStudio2022中开发需要访问SQLite数据库的网站项目时,遇到错误:未能加载文件或程序集“System.Data.SQLite.DLL”或它的......
  • 2021 Summer Petrozavodsk Camp, Day 3 IQ test (XXII Open Cup, Grand Prix of IMO)
    AND先看最小值是不是所有的子集,如果不是就无解,否则把剩下的中间塞一个最小值就好了。submissionMath移项,平方差变成\(a_j=(k-a_i)(k+a_i)\),爆枚\(k-a_i\)和\(k+a_i\)就是\(O(A\lnA)\)的。submissionFancyFormulas首先我们发现操作不改变\((a+b)\bmodp\),因此如果......
  • IIS启动应用程序池报错"服务无法在此时接受控制信息"
    https://www.cnblogs.com/yaotome/p/9540300.html网站突然打不开,重新生成程序不行,重新打开vs也不行,重启了网站还是不行,重启应用池就发现问题了。可以关,启不来了,也删不掉,提示“服务无法在此时接受控制信息”。用下面方法解决了。用管理员方式打开命令行输入命令netsh winsock ......
  • 解决MVC4发布在IIS7后,路径无法访问.apk文件的解决方法
    随着智能手机的普及,越来越多的人使用手机上网,很多网站也应手机上网的需要推出了网站客户端,.apk文件就是安卓(Android)的应用程序后缀名,默认情况下,使用IIS作为Web服务器的无法下载此文件,那么怎么才能让IIS支持.apk文件的下载呢?IIS服务器不能下载.apk文件的原因:iis的默认MIME类型......
  • #yyds干货盘点# LeetCode面试题:不同的二叉搜索树 II
    1.简述:给你一个整数 n ,请你生成并返回所有由 n 个节点组成且节点值从 1 到 n 互不相同的不同 二叉搜索树 。可以按 任意顺序 返回答案。 示例1:输入:n=3输出:[[1,null,2,null,3],[1,null,3,2],[2,1,3],[3,1,null,null,2],[3,2,null,1]]示例2:输入:n=1输出:[[1]]2.代......