文章目录

  • 1. 题目
  • 2. 解题

1. 题目

表:Sessions

+---------------------+---------+
| Column Name         | Type    |
+---------------------+---------+
| session_id          | int     |
| duration            | int     |
+---------------------+---------+
session_id 是该表主键
duration 是用户访问应用的时间, 以秒为单位

你想知道用户在你的 app 上的访问时长情况。
因此决定统计访问时长区间分别为 "[0-5>", "[5-10>", "[10-15>" 和 "15 or more" (单位:分钟)的会话数量,并以此绘制柱状图。

写一个SQL查询来报告(访问时长区间,会话总数)。结果可用任何顺序呈现。

下方为查询的输出格式:

Sessions 表:
+-------------+---------------+
| session_id  | duration      |
+-------------+---------------+
| 1           | 30            |
| 2           | 199           |
| 3           | 299           |
| 4           | 580           |
| 5           | 1000          |
+-------------+---------------+Result 表:
+--------------+--------------+
| bin          | total        |
+--------------+--------------+
| [0-5>        | 3            |
| [5-10>       | 1            |
| [10-15>      | 0            |
| 15 or more   | 1            |
+--------------+--------------+对于 session_id 1,2 和 3 ,它们的访问时间大于等于 0 分钟且小于 5 分钟。
对于 session_id 4,它的访问时间大于等于 5 分钟且小于 10 分钟。
没有会话的访问时间大于等于 10 分钟且小于 15 分钟。
对于 session_id 5, 它的访问时间大于等于 15 分钟。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/create-a-session-bar-chart
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 以下解法,缺少了数量为 0 项
# Write your MySQL query statement below
select case when duration < 300 then '[0-5>'when duration < 600 then '[5-10>'when duration < 900 then '[10-15>'else '15 or more'endas bin,ifnull(count(*),0) total
from Sessions
group by bin
  • 使用 union 操作
# Write your MySQL query statement below
select t2.bin, ifnull(count(t1.bin),0) total from
(selectcase when duration < 300 then '[0-5>'when duration < 600 then '[5-10>'when duration < 900 then '[10-15>'else '15 or more'endas bin        from Sessions
) t1
right join
(select '[0-5>' as bin unionselect '[5-10>' as bin unionselect '[10-15>' as bin unionselect '15 or more' as bin
) t2
on t2.bin = t1.bin
group by t2.bin

用 t2 的名称,用 t1 的数值


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!

LeetCode MySQL 1435. 制作会话柱状图相关推荐

  1. LeetCode MySQL解题目录

    已完成的 LeetCode MySQL 数据库题目.点击查看我的 LeetCode 算法解题目录. 已解决 123/123 - 简单 54 中等 51 困难 18 前置入门学习 MySQL 基本查询. ...

  2. mysql bi方案_《奥威Power-BI基于MySQL数据源制作报表》精彩回顾

    就在昨天,粉丝界终于有一碗粉丝修成正果,追了周杰伦16年,他的偶像终于请他吃了一碗面,简直就是十六年的粉丝熬成了一碗面,丝儿们既羡慕又感叹:追的是一种精神!只要你请我吃面,喜欢你20年都不是问题! 算 ...

  3. java+jsp+网页制作,java+jsp+mysql网页制作总结(2)

    错误:url通过get传递时汉字出错 解决:url通过get传递时汉字会乱码, 1.String name1=request.getParameter("name"); Strin ...

  4. LeetCode MySQL 1308. 不同性别每日分数总计(累加/变量/窗口函数)

    文章目录 1. 题目 2. 解题 1. 题目 表: Scores +---------------+---------+ | Column Name | Type | +--------------- ...

  5. mysql管理应用_如何在PHP和MySQL中制作出色的库存管理应用程序

    mysql管理应用 by Richard 理查德(Richard) 如何在PHP和MySQL中制作出色的库存管理应用程序 (How to Make an Awesome Inventory Manag ...

  6. echarts怎么实现立体柱状图_在vue项目中使用echarts制作3d柱状图

    在上一篇文章我们讲到构建项目,这篇文章,我们就来讲解一下,在vue项目中使用echarts制作3d柱状图. 还请看我娓娓写来. 1.第一步当然还是进入你所在项目的文件夹. 2.第二步使用npm安装你所 ...

  7. Leetcode 1482题 制作 m 束花所需的最少天数

    Leetcode 1482题 制作 m 束花所需的最少天数 链接: 制作 m 束花所需的最少天数. 提交结果: 解题思路 本题主要采用二分查找的解题思路,范围为0到天数最大值,根据是否能组成相应数量的 ...

  8. Echart+Vue制作3d柱状图

    Echart+Vue制作3d柱状图 先看一下效果图: 我是根据Echart官网上的实例稍加改变的:Echarts官网实例地址 下面直接上代码: HTML部分: <span class=" ...

  9. mysql怎么制作柱状图_从数据库中取出最近三十天的数据并生成柱状图

    在终端用cd 命令进入文件目录 说明:此处例子我是拿项目中的一个例子讲解的. 1.新建一个项目 :用终端输入:zf create project Airline 格式:zf create action ...

最新文章

  1. Google公布OpenFermion:量子计算机的开源软件包
  2. ASP.NET2.0_执行页面发送的强类型方法与弱类型方法
  3. delphi 搭建安卓开发环境
  4. 【LeetCode】233. 数字1的个数
  5. 位运算实现用户留存率
  6. Oracle RMAN 表空间恢复
  7. sqlserver 创建对某个存储过程执行情况的跟踪
  8. 唐刘之辩:行业知识图谱的schema构建的难点、重点与困惑
  9. 法拉克机器人自动怎么调_在使用钢网印刷SMT贴片红胶时全自动印刷机的参数怎么调?...
  10. 再次理解javascript中的事件
  11. 计算机网络|传输控制协议TCP概述
  12. java棋盘覆盖分治法_【单选题】实现棋盘覆盖算法利用的算法是( ) A. 分治法 B. 动态规划法 C. 贪心法 D. 回溯法...
  13. 1复数与复变函数(一)
  14. 读书笔记—《雷达信号处理基础》第一章 雷达系统与信号处理概述
  15. 网络靶场攻防综合实验
  16. Surface Pro的MicroSDHC卡测速
  17. Windows下安装Tensorflow-Slim(待续)
  18. java商城系统和php商城系统哪个好?
  19. BLDC 6步换相 simulink
  20. Spring-配置数据源

热门文章

  1. php 获取delete蚕丝_php结合Redis实现100万用户投票项目,并实时查看到投票情况的案例...
  2. 数据库函数依赖及范式
  3. c++调用Libsvm
  4. mfc中UpdateData的用法
  5. 凡人修仙传显示无法连接服务器,《凡人修仙传》网络异常及橙色BOSS补偿说明...
  6. appium+python自动化项目实战(二):项目工程结构
  7. 计算多个文档之间的文本相似程度
  8. 前端小demo——全选和全不选
  9. SpringMVC原理及非注解配置详解
  10. linux-虚拟机安装