当前位置: 首页 > news >正文

牛客刷SQL

    作者简介:大家好我是小唐同学(๑>؂<๑),为梦想而奋斗的小唐,让我们一起加油!!!

个人主页:小唐同学(๑>؂<๑)的博客主页

博友们如果也是新手入门数据结构我希望大家可以多加练习 数据结构题库在牛客网就有已经给大家附上链接,可以直接点击跳转:刷题点这里

牛客网支持ACM模式哦,刷算法题也很推荐哦!!!

下面上文章------》

 

SQL27 查看不同年龄段的用户明细

描述

题目:现在运营想要将用户划分为20岁以下,20-24岁,25岁及以上三个年龄段,分别查看不同年龄段用户的明细情况,请取出相应数据。(注:若年龄为空请返回其他。)

示例:user_profile

iddevice_idgenderageuniversitygpaactive_days_within_30question_cntanswer_cnt
12138male21北京大学3.47212
23214male复旦大学415525
36543female20北京大学3.212330
42315female23浙江大学3.6512
55432male25山东大学3.8201570
62131male28山东大学3.315713
74321male26复旦大学3.69652

根据示例,你的查询应返回以下结果:

device_idgenderage_cut
2138male20-24岁
3214male其他
6543female20-24岁
2315female20-24岁
5432male25岁及以上
2131male25岁及以上
4321male25岁及以上

示例1

输入:

drop table if exists `user_profile`;
drop table if  exists `question_practice_detail`;
CREATE TABLE `user_profile` (
`id` int NOT NULL,
`device_id` int NOT NULL,
`gender` varchar(14) NOT NULL,
`age` int ,
`university` varchar(32) NOT NULL,
`gpa` float,
`active_days_within_30` int ,
`question_cnt` int ,
`answer_cnt` int 
);
CREATE TABLE `question_practice_detail` (
`id` int NOT NULL,
`device_id` int NOT NULL,
`question_id`int NOT NULL,
`result` varchar(32) NOT NULL
);
CREATE TABLE `question_detail` (
`id` int NOT NULL,
`question_id`int NOT NULL,
`difficult_level` varchar(32) NOT NULL
);

INSERT INTO user_profile VALUES(1,2138,'male',21,'北京大学',3.4,7,2,12);
INSERT INTO user_profile VALUES(2,3214,'male',null,'复旦大学',4.0,15,5,25);
INSERT INTO user_profile VALUES(3,6543,'female',20,'北京大学',3.2,12,3,30);
INSERT INTO user_profile VALUES(4,2315,'female',23,'浙江大学',3.6,5,1,2);
INSERT INTO user_profile VALUES(5,5432,'male',25,'山东大学',3.8,20,15,70);
INSERT INTO user_profile VALUES(6,2131,'male',28,'山东大学',3.3,15,7,13);
INSERT INTO user_profile VALUES(7,4321,'male',28,'复旦大学',3.6,9,6,52);
INSERT INTO question_practice_detail VALUES(1,2138,111,'wrong');
INSERT INTO question_practice_detail VALUES(2,3214,112,'wrong');
INSERT INTO question_practice_detail VALUES(3,3214,113,'wrong');
INSERT INTO question_practice_detail VALUES(4,6543,111,'right');
INSERT INTO question_practice_detail VALUES(5,2315,115,'right');
INSERT INTO question_practice_detail VALUES(6,2315,116,'right');
INSERT INTO question_practice_detail VALUES(7,2315,117,'wrong');
INSERT INTO question_practice_detail VALUES(8,5432,117,'wrong');
INSERT INTO question_practice_detail VALUES(9,5432,112,'wrong');
INSERT INTO question_practice_detail VALUES(10,2131,113,'right');
INSERT INTO question_practice_detail VALUES(11,5432,113,'wrong');
INSERT INTO question_practice_detail VALUES(12,2315,115,'right');
INSERT INTO question_practice_detail VALUES(13,2315,116,'right');
INSERT INTO question_practice_detail VALUES(14,2315,117,'wrong');
INSERT INTO question_practice_detail VALUES(15,5432,117,'wrong');
INSERT INTO question_practice_detail VALUES(16,5432,112,'wrong');
INSERT INTO question_practice_detail VALUES(17,2131,113,'right');
INSERT INTO question_practice_detail VALUES(18,5432,113,'wrong');
INSERT INTO question_practice_detail VALUES(19,2315,117,'wrong');
INSERT INTO question_practice_detail VALUES(20,5432,117,'wrong');
INSERT INTO question_practice_detail VALUES(21,5432,112,'wrong');
INSERT INTO question_practice_detail VALUES(22,2131,113,'right');
INSERT INTO question_practice_detail VALUES(23,5432,113,'wrong');
INSERT INTO question_detail VALUES(1,111,'hard');
INSERT INTO question_detail VALUES(2,112,'medium');
INSERT INTO question_detail VALUES(3,113,'easy');
INSERT INTO question_detail VALUES(4,115,'easy');
INSERT INTO question_detail VALUES(5,116,'medium');
INSERT INTO question_detail VALUES(6,117,'easy');

复制输出:

2138|male|20-24岁
3214|male|其他
6543|female|20-24岁
2315|female|20-24岁
5432|male|25岁及以上
2131|male|25岁及以上
4321|male|25岁及以上
SELECT device_id,gender , case 
when age<20 then '20岁以下'
when age>=20 && age<=24 then '20-24岁'
when age>24 then '25岁及以上'
else '其他'
end as age_cnt
from user_profile;

相关文章:

  • 如何高效的实现大型设备中卫星信号的传输和分配?
  • C语言描述数据结构 —— 二叉树(3)普通二叉树
  • Nginx rewrite
  • 【基于Arduino的垃圾分类装置开发教程一】
  • Synchronized 与 Lock 卖票问题、区别
  • 多疑型性格的危害,如何改变多疑型性格?
  • javaweb教师人事管理系统的设计
  • 【Swift 60秒】01 - Variables - 变量
  • 图像处理:单通道转为3通道
  • impala sql语法
  • 牛视系统源码定制,抖音矩阵系统定制开发。come here
  • 16 C++设计模式之职责链(Chain of Responsibility)模式
  • Kubernetes inotify watch 耗尽
  • LeetCode刷题(12)
  • linux系统命令-查看内存使用情况
  • co.js - 让异步代码同步化
  • Hibernate【inverse和cascade属性】知识要点
  • Linux gpio口使用方法
  • Python socket服务器端、客户端传送信息
  • QQ浏览器x5内核的兼容性问题
  • Redis字符串类型内部编码剖析
  • SegmentFault 社区上线小程序开发频道,助力小程序开发者生态
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 分类模型——Logistics Regression
  • 利用jquery编写加法运算验证码
  • 思否第一天
  • 我的面试准备过程--容器(更新中)
  • 没有任何编程基础可以直接学习python语言吗?学会后能够做什么? ...
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • ​虚拟化系列介绍(十)
  • #pragma data_seg 共享数据区(转)
  • $GOPATH/go.mod exists but should not goland
  • $HTTP_POST_VARS['']和$_POST['']的区别
  • ( )的作用是将计算机中的信息传送给用户,计算机应用基础 吉大15春学期《计算机应用基础》在线作业二及答案...
  • (42)STM32——LCD显示屏实验笔记
  • (5)STL算法之复制
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • (二)正点原子I.MX6ULL u-boot移植
  • (附源码)ssm基于微信小程序的疫苗管理系统 毕业设计 092354
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (转)创业家杂志:UCWEB天使第一步
  • (转贴)用VML开发工作流设计器 UCML.NET工作流管理系统
  • .NET 将混合了多个不同平台(Windows Mac Linux)的文件 目录的路径格式化成同一个平台下的路径
  • .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序)...
  • .net实现客户区延伸至至非客户区
  • @JsonSerialize注解的使用
  • [Android]RecyclerView添加HeaderView出现宽度问题
  • [C/C++]数据结构 循环队列
  • [C++提高编程](三):STL初识
  • [dart学习]第四篇:函数
  • [Django 0-1] Core.Email 模块
  • [Linux]----文件操作(复习C语言+文件描述符)
  • [Python] Ubuntu12.04LTS
  • [svc][op]关闭linux centos各种声音