高频SQL50题 第四天 | 1251. 平均售价、620. 有趣的电影、1075. 项目员工 I、1633. 各赛事的用户注册率

知识点导览:日期大小比较;ifnull(字段,默认值)函数;取余操作;字符串比较like;逆序desc

1251. 平均售价

题目链接:https://leetcode.cn/problems/average-selling-price/description/?envType=study-plan-v2\&envId=sql-free-50

状态:已完成

考点

  • 判断日期是否位于某个区间内,可以使用 > = >= >=和 < = <= <=计算
  • i f n u l l ( 字段,默认值 ) ifnull(字段,默认值) ifnull(字段,默认值)可以将字段中的null替换为默认值
sql 复制代码
select Prices.product_id, ifnull(round(sum(price*units) / sum(units), 2), 0) as average_price
from Prices left join UnitsSold
on Prices.product_id = UnitsSold.product_id and UnitsSold.purchase_date >= Prices.start_date and UnitsSold.purchase_date <= Prices.end_date
group by product_id

620. 有趣的电影

题目链接:https://leetcode.cn/problems/not-boring-movies/?envType=study-plan-v2\&envId=sql-free-50

状态:已完成

考点

  • 取余操作 %
  • 字符串比较操作 like,not like
  • 逆序排序 order by XXX desc
sql 复制代码
select *
from cinema
where id % 2 = 1 and description not like 'boring'
order by rating desc

1075. 项目员工 I

题目链接:https://leetcode.cn/problems/project-employees-i/?envType=study-plan-v2\&envId=sql-free-50

状态:已完成

考点:无,均为重复考点

sql 复制代码
select project_id, round(sum(experience_years) / count(*), 2) as average_years
from Project join Employee
on Project.employee_id = Employee.employee_id
group by project_id

1633. 各赛事的用户注册率(*)

题目链接:https://leetcode.cn/problems/percentage-of-users-attended-a-contest/description/?envType=study-plan-v2\&envId=sql-free-50

状态:需二刷,想了好久怎么通过连接解决,最后还是没想到

考点:子查询获取用户总数,作为新的一列num,通过连接操作加入Register表中

sql 复制代码
select contest_id, round(count(*) / num * 100, 2) as percentage
from Register join (select count(*) as num from Users) as Table1
group by contest_id
order by percentage desc, contest_id
相关推荐
定偶16 分钟前
MySQL安装
数据库·mysql
Zzzzmo_18 分钟前
【MySQL】数据库约束 及 表的设计
数据库·mysql
我真的是大笨蛋1 小时前
Redo Log详解
java·数据库·sql·mysql·性能优化
Jess072 小时前
MySQL内置函数
数据库·mysql
凉年技术2 小时前
MySQL 5.6 2000 万行高频读写表新增字段实战:从慢执行到无锁落地全解析
mysql
xiaoye37085 小时前
redis和mysql数据库如何保证数据一致性
redis·mysql
一条闲鱼_mytube5 小时前
MySQL vs PostgreSQL 对比
数据库·mysql·postgresql
小北方城市网5 小时前
Spring Boot 多数据源与事务管理实战:主从分离、动态切换与事务一致性
java·开发语言·jvm·数据库·mysql·oracle·mybatis
invicinble6 小时前
对于mysql层对sql层面的知识体系的理解和把握
数据库·sql·mysql
Nandeska6 小时前
14、MySQL基于GTID的数据同步
数据库·mysql