15- 22题聚合函数 - 高频 SQL 50 题基础版

news2024/11/23 7:46:05

目录

  • 1. 相关知识点
  • 2. 例子
    • 2.15 - 有趣的电影
    • 2.16 - 平均售价
    • 2.17 - 项目员工 I
    • 2.18 - 各赛事的用户注册率
    • 2.19 - 查询结果的质量和占比
    • 2.20 - 每月交易 I
    • 2.21 - 即时食物配送 II
    • 2.22 - 游戏玩法分析 IV

1. 相关知识点

  • 函数
函数含义
order by排序
group by分组
between 小值 and 大值取值范围
date_format(trans_date,‘%Y-%m’)日期转换格式
count(*)表示数据的行数,如果有分组,为分组后数据的行数
date_add(min(event_date),INTERVAL 1 DAY)日期相加

2. 例子

2.15 - 有趣的电影

在这里插入图片描述
在这里插入图片描述

select
    * 
from 
    cinema
where
    description!='boring' and id%2!=0
order by 
    rating desc;

2.16 - 平均售价

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

# 注意:between 小值 and 大值 

select 
    u.product_id, round(sum(u.units*p.price)/sum(u.units),2) average_price 
from 
    Prices p left join UnitsSold u 
on 
    p.product_id=u.product_id 
-- and
where 
    u.purchase_date between p.start_date and p.end_date 
group by 
    u.product_id;

2.17 - 项目员工 I

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

select
    -- round(sum(e.experience_years)/count(*),2) 
    p.project_id,round(avg(e.experience_years),2) average_years
from 
    Project p left join Employee e
on 
    p.employee_id=e.employee_id 
group by 
    p.project_id;

2.18 - 各赛事的用户注册率

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

-- 注册率=注册用户数/所有用户数
select
    r.contest_id,round(100*count(*)/(select count(*) from Users),2) percentage 
from 
    Register r
group by 
    r.contest_id
order by
     percentage desc,r.contest_id ASC;

2.19 - 查询结果的质量和占比

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

-- round(avg(rating<3)*100,2)=round(avg(if(rating<3,1,0))*100,2) 
select 
    query_name,round(avg(rating/position),2) quality,round(avg(if(rating<3,1,0))*100,2) poor_query_percentage 
from
    Queries
group by
    query_name;

2.20 - 每月交易 I

在这里插入图片描述
在这里插入图片描述

--  考点:日期转换格式
--  date_format(trans_date,'%Y-%m')

select 
    date_format(trans_date,'%Y-%m') month,
    country,
    count(*) trans_count,
    sum(if(state='approved',1,0)) approved_count,
    sum(amount) trans_total_amount,
    sum(if(state="approved",amount,0)) approved_total_amount
from
    Transactions 
group by
    month,country;

2.21 - 即时食物配送 II

在这里插入图片描述
在这里插入图片描述

-- sum(if(order_date=customer_pref_delivery_date,1,0))/count(*)=sum(order_date=customer_pref_delivery_date)/count(*)
-- count(*),表示数据的行数,如果有分组,为分组后数据的行数


select 
    round(100*sum(if(order_date=customer_pref_delivery_date,1,0))/count(*),2) immediate_percentage 
from
    Delivery 
where 
    (customer_id,order_date) in 
        (select
            customer_id,min(order_date)
        from 
            Delivery
        group by
            customer_id);

2.22 - 游戏玩法分析 IV

  • 考点: 聚合函数
    在这里插入图片描述
    在这里插入图片描述
# 日期相加 date_add(min(event_date),INTERVAL 1 DAY) 
select 
    round(count(distinct player_id)/(select count(distinct player_id) from Activity),2) fraction  
from
    Activity 
where
    -- 如果日期加一天的数据能在表中查到,说明连续登录了两天
    (player_id,event_date) in 
    (select 
        player_id,date_add(min(event_date),INTERVAL 1 DAY) 
    from 
        Activity 
    GROUP BY
        player_id
     );

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1880027.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于web的产品管理系统

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于web的产品管理系统,java项目。 ecli…

2024最新boss直聘岗位数据爬虫,并进行可视化分析

前言 近年来,随着互联网的发展和就业市场的变化,数据科学与爬虫技术在招聘信息分析中的应用变得越来越重要。通过对招聘信息的爬取和可视化分析,我们可以更好地了解当前的就业市场动态、职位需求和薪资水平,从而为求职者和招聘企业提供有价值的数据支持。本文将介绍如何使…

Chrome浏览器web调试(js调试、css调试、篡改前置)

目录 1. 打开开发者工具(Dev Tool) 2. 打开命令菜单 截图 3. 面板介绍 4. CSS调试 右键检查快速到达元素处 查找DOM数 利用面板Console查找DOM节点 内置函数查找上一个选择点击的元素 5. 调试JS代码(Javascript调试) 日志调试 选择查看日志等级 眼睛观测变量 …

关于Unity运行时动态修改材质的小秘密

一、问题背景 在以往的Unity项目中涉及到修改材质的需求时&#xff0c;也只是改改材质贴图&#xff0c;材质颜色等&#xff0c;也没遇到那么多动态修改材质的坑。最近在做Unity App Demo时也遇到了要修改材质的小需求&#xff0c;本以为几分钟就能完成了&#xff0c;却花费了我…

【FPGA项目】System Generator算法板级验证-快速搭建外围测试电路

&#x1f389;欢迎来到FPGA专栏~System Generator算法板级验证-快速搭建外围测试电路 ☆* o(≧▽≦)o *☆嗨~我是小夏与酒&#x1f379; ✨博客主页&#xff1a;小夏与酒的博客 &#x1f388;该系列文章专栏&#xff1a;FPGA学习之旅 文章作者技术和水平有限&#xff0c;如果文…

深入解析MySQL语句的执行步骤

目录 MySQL架构概述语句执行步骤总览连接管理与线程处理语法解析查询缓存语义解析与预处理查询优化执行计划生成存储引擎层执行结果集返回优化查询性能的技巧结论 MySQL架构概述 在深入探讨MySQL语句执行的具体步骤之前&#xff0c;我们先来了解MySQL的整体架构。MySQL架构主…

简单多状态DP问题

这里写目录标题 什么是多状态DP解决多状态DP问题应该怎么做&#xff1f;关于多状态DP问题的几道题1.按摩师2.打家劫舍Ⅱ3.删除并获得点数4.粉刷房子5.买卖股票的最佳时期含手冷冻期 总结 什么是多状态DP 多状态动态规划&#xff08;Multi-State Dynamic Programming, Multi-St…

Chapter8 透明效果——Shader入门精要学习笔记

一、基本概念 在Unity中通常使用两种方法来实现透明效果 透明度测试&#xff08;无法达到真正的半透明效果&#xff09;透明度混合&#xff08;关闭了深度写入&#xff09; 透明度测试 基本原理&#xff1a;设置一个阈值&#xff0c;只要片元的透明度小于阈值&#xff0c;就…

pandas数据分析(2)

列 执行df.columns获取DataFrame列信息&#xff1a; 如果在构造DataFrame时没有提供列名&#xff0c;那么pandas会用 从0开始的数字为列编号。我们也可以为列命名&#xff0c;和为索引命名类似&#xff1a; 同样也可以重命名列名&#xff1a; 使用df.drop删除列&#xff1a; 删…

Apple - Text Layout Programming Guide

本文翻译整理自&#xff1a;Text Layout Programming Guide&#xff08;更新日期&#xff1a;2014-02-11 https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/TextLayout/TextLayout.html#//apple_ref/doc/uid/10000158i 文章目录 一、文本布局编程指…

小米集团25届校招留学生面试经验汇总及入职测评笔试题型分析

一、小米校招24年春招智能驾驶产品管理面试经验分享 ​ - **自我介绍**&#xff1a;准备一个精炼的自我介绍&#xff0c;突出自己的优势和适合岗位的特点。 - **项目经验**&#xff1a;详细回顾你在实习或项目中的具体角色和贡献&#xff0c;准备用成果和数据支撑。 - **行业…

【成都活动邀请函】7月6 | PowerData 数字经济-“成都“开源行!

【成都活动邀请函】7月6 | PowerData 数字经济-"成都"开源行&#xff01; 活动介绍活动信息线上直播扫码报名往期活动回顾专注数据开源&#xff0c;推动大数据发展 活动介绍 九天开出一成都&#xff0c;万户千门入画图。 自古以来&#xff0c;成都便是国家发展的重要…

为什么在重写equals方法后还要再重写hashcode方法(面试题)

接着上篇文章说到&#xff08;上篇文章地址&#xff1a;http://t.csdnimg.cn/udpsThttp://t.csdnimg.cn/udpsT&#xff09;我们在代码中发现重写了equals方法后还需要重写hashcode方法&#xff0c;为什么呢&#xff1f; 对于set这种数据类型&#xff0c;里面的值是不允许有重复…

【游戏引擎之路】登神长阶(五)

5月20日-6月4日&#xff1a;攻克2D物理引擎。 6月4日-6月13日&#xff1a;攻克《3D数学基础》。 6月13日-6月20日&#xff1a;攻克《3D图形教程》。 6月21日-6月22日&#xff1a;攻克《Raycasting游戏教程》。 6月23日-6月30日&#xff1a;攻克《Windows游戏编程大师技巧》。 …

【WPF】Windows系统桌面应用程序编程开发新手入门-打造自己的小工具

电脑Windows系统上的桌面程序通常是用Visual Studio 开发工具编写出来的&#xff0c;有两种开发方式供选择&#xff0c;一种是WindowForm&#xff0c;简称WinForm&#xff0c;另一种是Windows Presentation Foundation&#xff0c;简称WPF&#xff0c;这里将学习WPF项目。 文章…

安全不“放假”!暑期安全老师就用秒报小程序提示学生的安全

随着暑假的到来&#xff0c;孩子们如同出笼的小鸟&#xff0c;迫不及待地投入到广阔天地的怀抱。然而&#xff0c;作为老师&#xff0c;我深知这段时间虽然孩子们得到了放松和游玩的机会&#xff0c;但安全问题却不容忽视。如何让孩子们在享受假期的同时&#xff0c;又能确保他…

SpringBoot(一)创建一个简单的SpringBoot工程

Spring框架常用注解简单介绍 SpringMVC常用注解简单介绍 SpringBoot&#xff08;一&#xff09;创建一个简单的SpringBoot工程 SpringBoot&#xff08;二&#xff09;SpringBoot多环境配置 SpringBoot&#xff08;三&#xff09;SpringBoot整合MyBatis SpringBoot&#xff08;四…

FairGuard游戏加固无缝兼容 Android 15 预览版

2024年6月25日&#xff0c;谷歌发布了 Android 15 Beta 3 &#xff0c;作为Android 15 “平台稳定性”的里程碑版本&#xff0c;谷歌建议所有应用、游戏、SDK、库和游戏引擎开发者都将“平台稳定性”里程碑版本作为规划最终兼容性测试和公开发布的目标。 安卓开发者博客提供的版…

PostgreSQL安装教程及文件介绍

Ubuntu 安装和配置 PostgreSQL 以 Ubuntu Server 20.04&#xff0c;PostgreSQL 12 版本为例。 1. 安装 使用如下命令&#xff0c;安装指定版本的 PostgreSQL sudo apt install postgresql-12在 Ubuntu 20.04 中安装 PostgreSQL 登录您的 Ubuntu 系统并使用以下 apt 命令更新…

[HBM] HBM TSV (Through Silicon Via) 结构与工艺

依公知及经验整理&#xff0c;原创保护&#xff0c;禁止转载。 专栏 《深入理解DDR》 全文 3300 字。 1 概念 1.1 什么是HBM TSV 使用 TSV 堆叠多个DDR DRAM成为一块HBM, 成倍提高了存储器位宽&#xff0c; 一条位宽相当于高速公路的一条车道&#xff0c; 车道越多&#xff…