力扣sql中等篇练习(十四)

这篇具有很好参考价值的文章主要介绍了力扣sql中等篇练习(十四)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

力扣sql中等篇练习(十四)

1 最后一个能进入电梯的人

1.1 题目内容

1.1.1 基本题目信息

力扣sql中等篇练习(十四)

1.1.2 示例输入输出

力扣sql中等篇练习(十四)

1.2 示例sql语句

# 在表某一个范围内的可以考虑自连接的方式,注意连接的表只需要精准的字段
# 需要排序是因为它需要找到最后一个上车的用户
SELECT q1.person_name
FROM
(
    SELECT person_name,turn
    FROM Queue
)q1
INNER JOIN 
(
   SELECT turn,weight
   FROM Queue
)q2
ON q1.turn>=q2.turn
GROUP BY q1.turn
HAVING sum(q2.weight)<=1000
ORDER BY q1.turn desc
limit 1 

1.3 运行截图

力扣sql中等篇练习(十四)

2 每月交易Ⅱ

2.1 题目内容

2.1.1 基本题目信息

力扣sql中等篇练习(十四)

2.1.2 示例输入输出
a 示例输入

力扣sql中等篇练习(十四)

b 示例输出

力扣sql中等篇练习(十四)

2.2 示例sql语句

# 需要新开一个列 区分退单还是批准
# 无论是批准还是拒绝,都可以退单
SELECT t1.month,t1.country,
       SUM(IF(t1.state='approved' AND t1.flag=1,1,0)) approved_count,
       SUM(IF(t1.state='approved' AND t1.flag=1,amount,0)) approved_amount,
       SUM(IF(t1.flag=0,1,0)) chargeback_count,
       SUM(IF(t1.flag=0,amount,0)) chargeback_amount
FROM
(
    -- 0代表退单,1代表批准
    SELECT t.id,t.country,t.state,t.amount,date_format(c.trans_date,'%Y-%m') month,0 flag
    FROM Transactions t 
    RIGHT JOIN Chargebacks c
    ON t.id=c.trans_id
    UNION ALL
    SELECT id,country,state,amount,date_format(trans_date,'%Y-%m') month,1 flag
    FROM Transactions
    WHERE state='approved'
)t1
GROUP BY t1.month,t1.country

2.3 运行截图

力扣sql中等篇练习(十四)

3 查询球队积分

3.1 题目内容

3.1.1 基本题目信息1

力扣sql中等篇练习(十四)

3.1.2 基本题目信息2

力扣sql中等篇练习(十四)

3.1.3 示例输入输出

力扣sql中等篇练习(十四)

3.2 示例sql语句

# 有的球队可能只打过主场或者只打过客场
# UNION ALL两表连接时就算有group by 也可以在其后写union all
SELECT t1.team_id,t1.team_name,IFNULL(t3.num_points,0) num_points
FROM Teams t1
LEFT JOIN
(
    SELECT t2.host_team,sum(t2.score) num_points
    FROM
    (
        SELECT host_team,sum(IF(host_goals>guest_goals,3,IF(host_goals=guest_goals,1,0))) score
        FROM Matches
        GROUP BY host_team   
        UNION ALL
        SELECT guest_team host_team,sum(IF(host_goals<guest_goals,3,IF(host_goals=guest_goals,1,0))) score
        FROM Matches
        GROUP BY guest_team   
    )t2
    GROUP BY t2.host_team
)t3
ON t1.team_id=t3.host_team
ORDER BY num_points desc,t1.team_id asc

3.3 运行截图

力扣sql中等篇练习(十四)文章来源地址https://www.toymoban.com/news/detail-427585.html

到了这里,关于力扣sql中等篇练习(十四)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SQL力扣练习(十一)

    目录 1.树节点(608) 示例 1 解法一(case when) 解法二(not in) 2.判断三角形(610) 示例 1 解法一(case when) 解法二(if) 解法三(嵌套if) 3.只出现一次的最大数字(619) 示例 1 解法一(count limit) 解法二(max) 4.有趣的电影(620) 解法一 5.换座位(626) 示例 1 解法一(case when) 解法二(count mod case-when) 解法三

    2024年02月12日
    浏览(33)
  • SQL力扣练习(七)

    目录 1.行程和用户(262) 方法一(Left Join) 方法二(NOT IN) 方法三(Join) 2.游戏玩法分析I(511) 方法一(min) 3.游戏玩法分析I(550) 方法一(AVG) 表: Trips 表: Users 取消率  的计算方式如下:(被司机或乘客取消的非禁止用户生成的订单数量) / (非禁止用户生成的订单总数

    2024年02月15日
    浏览(30)
  • SQL力扣练习(五)

    目录  1.从不订购的客户(183) 解法一(not in) 解法二(is) 解法三(not exists) 解法四(isnull函数) 2.部门工资最高的员工(184) 解法一(in) 解法二(rank窗口函数) 某网站包含两个表, Customers  表和  Orders  表。编写一个 SQL 查询,找出所有从不订购任何东西的客户。 Customers  表:

    2024年02月12日
    浏览(32)
  • SQL力扣练习(四)

    表: Employee   编写一个SQL查询来查找收入比经理高的员工。   示例 1: 在这里普及一下连接小知识。 1.​Left join:即左连接,是以左表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将左表所有的查询信息列出,而右表只列出ON后条件与左表满足的部分。左连接全

    2024年02月12日
    浏览(28)
  • SQL力扣练习(六)

    目录 1. 部门工资前三高的所有员工(185) 题解一(dense_rank()窗口函数) 题解二(自定义函数)  2.删除重复的电子邮箱(196) 题解一 题解二(官方解析) 3.上升的温度(197) 解法一(DATEDIFF()) 解法二(TIMESTAMPDIFF()) 解法三(ADDDATE()力扣) 表:  Employee 表:  Department 公司的主管们感

    2024年02月13日
    浏览(29)
  • SQL力扣练习(九)

    目录 1.订单最多的用户(586) 示例 1 解法一(limit) 解法二(dense_rank()) 2.体育馆的人流量 示例 1 解法一(临时表) 解法二(三表法) 表:  Orders 查找下了  最多订单  的客户的  customer_number  。 测试用例生成后,  恰好有一个客户  比任何其他客户下了更多的订单。 查询结果格式如

    2024年02月14日
    浏览(32)
  • SQL力扣练习(十)

    目录 1.体育馆的人流量(501) 示例 1 解法一(row_number()) 解法二(自定义变量) 解法三 2.好友申请(602) 示例 解法一(union all) 解法二 3.销售员(607) 示例 解法一 解法二 表: Stadium 编写一个 SQL 查询以找出每行的人数大于或等于  100  且  id  连续的三行或更多行记录

    2024年02月14日
    浏览(29)
  • SQL力扣练习(八)

    目录 1.至少有五名直接下属的经理(570) 方法一(in) 方法二(join) 方法三(row_number) 方法四(自连接) 2.员工奖金(577) 方法一(left join) 3.寻找用户推荐人(584) 方法一 4.2016年的投资(585) 示例 方法一(join,count) 方法二(in) 方法四(连接加 in) 表:  Employee 查询 至少有5名直接下属 的经理   。

    2024年02月15日
    浏览(29)
  • 力扣622:设计循环队列(中等)

    目录 思考 一,循环队列的初始化myCircularQueueCreate 二,判断是否为空myCircularQueueIsEmpty 三,判断队列是否满了bool myCircularQueueIsFull 四,队列的插入myCircularQueueEnQueue 五,队列的删除myCircularQueueDeQueue 六,队列取头元素和尾元素myCircularQueueFront   //   myCircularQueueRear 七,销毁队列

    2024年03月13日
    浏览(37)
  • 力扣 198.打家劫舍【中等】

    题目来源:力扣(LeetCode)https://leetcode.cn/problems/house-robber 题目:你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。

    2024年02月16日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包