首页 > 数据库 >牛客网Mysql相应试题 SQL28 计算用户8月每天的练题数量

牛客网Mysql相应试题 SQL28 计算用户8月每天的练题数量

时间:2024-03-16 19:56:14浏览次数:32  
标签:INSERT INTO question detail 牛客 练题 VALUES 2021 Mysql

SQL28 计算用户8月每天的练题数量
描述
题目:现在运营想要计算出2021年8月每天用户练习题目的数量,请取出相应数据。
示例:question_practice_detail


id device_id question_id result date
1 2138 111 wrong 2021-05-03
2 3214 112 wrong 2021-05-09
3 3214 113 wrong 2021-06-15
4 6543 111 right 2021-08-13
5 2315 115 right 2021-08-13
6 2315 116 right 2021-08-14
7 2315 117 wrong 2021-08-15

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


day question_cnt
13 5
14 2
15 3
16 1
18 1
 
select t.a as day,count(t.device_id)  as question_cnt from (select day(date) as a,device_id from question_practice_detail where date like '2021-08%') t group by t.a; NOW(),用于获取当前日期和时间函数   2024-03-16 10:58:06  select Now() CURDATE(),用于获取当前日期,同CURRENT_DATE() 2024-03-16 CURTIME(),用于获取当前时间,同CURRENT_TIME() 10:58:06 DATE()函数,用于提取时间字段的日期  2024-03-16 YEAR()函数,用于提取时间字段的年,,返回的格式为"YYYY" MONTH()函数,用于提取时间字段的月,返回的格式为"mm",若月份前有0会忽略 DAY()函数,用于提取时间字段的日期,,返回的格式为"dd",若日期前有0会忽略 TIME()函数,用于提取时间字段的时间,,返回的格式为"HH:ii:ss" HOUR()函数,用于提取时间字段的小时,,返回的格式为"HH",若小时前有0会忽略,如08则返回8 MINUTE()函数,用于提取时间字段的分钟,返回的格式为"ii",若分钟前有0会忽略,如08则返回8 SECOND()函数,用于提取时间字段的秒,返回的格式为"ss",若秒前有0会忽略,如08则返回8 UNIX_TIMESTAMP()函数,获取当前时间戳,还可以将时间字段转换成时间戳 WEEK()函数    获取日期对应的第几周 QUARTER()   获取日期对应的季度   DAYOFYEAR()  获取当天一日为这一年的第几天 DAYNAME()   获取对应周几 DAYOFMONTH()   获取日期是当月的第几天 TIME_TO_SEC()  获取时间对应的秒  ADDDATE('2023-05-18 10:58:59',2) 日期加N天

计算两个时间差

 SELECT DATEDIFF('2023-05-31 10:58:59','2023-05-18 10:58:59')

日期减去N天

 SELECT SUBDATE('2023-05-18 10:58:59',2)

--获取当前日期在本周的周一

select subdate(curdate(),date_format(curdate(),'%w')-1) ;

--获取当前日期在本周的周日  

select subdate(curdate(),date_format(curdate(),'%w')-7);

返回:2023-05-21

drop table if exists `user_profile`;
drop table if  exists `question_practice_detail`;
drop table if  exists `question_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,
`date` date 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','2021-05-03');
INSERT INTO question_practice_detail VALUES(2,3214,112,'wrong','2021-05-09');
INSERT INTO question_practice_detail VALUES(3,3214,113,'wrong','2021-06-15');
INSERT INTO question_practice_detail VALUES(4,6543,111,'right','2021-08-13');
INSERT INTO question_practice_detail VALUES(5,2315,115,'right','2021-08-13');
INSERT INTO question_practice_detail VALUES(6,2315,116,'right','2021-08-14');
INSERT INTO question_practice_detail VALUES(7,2315,117,'wrong','2021-08-15');
INSERT INTO question_practice_detail VALUES(8,3214,112,'wrong','2021-05-09');
INSERT INTO question_practice_detail VALUES(9,3214,113,'wrong','2021-08-15');
INSERT INTO question_practice_detail VALUES(10,6543,111,'right','2021-08-13');
INSERT INTO question_practice_detail VALUES(11,2315,115,'right','2021-08-13');
INSERT INTO question_practice_detail VALUES(12,2315,116,'right','2021-08-14');
INSERT INTO question_practice_detail VALUES(13,2315,117,'wrong','2021-08-15');
INSERT INTO question_practice_detail VALUES(14,3214,112,'wrong','2021-08-16');
INSERT INTO question_practice_detail VALUES(15,3214,113,'wrong','2021-08-18');
INSERT INTO question_practice_detail VALUES(16,6543,111,'right','2021-08-13');
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');

 

标签:INSERT,INTO,question,detail,牛客,练题,VALUES,2021,Mysql
From: https://www.cnblogs.com/hellotoworld/p/18077488

相关文章

  • 第三章 vim 以及 重点第四章 使用DataGrip mysql
    16/3/2024如没有特殊说明使用软件操作一律都是FinalShell第三章Vim编辑器的使用1)三种操作模式命令模式:使用快捷指令操作的文件内容插入模式(编辑模式):可以输入文字信息,此时快捷指令失效末行模式(低行模式),底线命令模式):可以保存退出或者替换文字等只能编辑文本内容不......
  • Mysql之备份工具
    一、备份工具1.mysqldumpmysql服务自带的备份工具;mysqldump备份方式是采用的逻辑备份,其最大的缺陷是备份和恢复速度较慢,如果数据库大于50G,mysqldump备份就不太适合;InnoDB:热备;启动大事务。MyISAM:温备;备份单个数据库hellodb至指定文件#mysqldump-uroot-h127.0.0.1-p-......
  • [转帖]关于mysql的时区(下):如何设置mysql的时区
    一、如何设置mysql时区1、命令1)查时区:showvariableslike'%time_zone%'返回有2行记录,要看time_zone变量的值,不需要看system_time_zone。若值为SYSTEM表示取值跟system_time_zone保持一致。system_time_zone的值是启动mysql服务的时候读取了操作系统的值,除非重新启......
  • 详解MySQL的MVCC(ReadView部分解析C++源码)
    文章目录1.什么是MVCC2.MVCC核心组成(三大件)2.1MVCC为什么需要三大件3.隐藏字段4.undolog4.1模拟版本链数据形成过程5.ReadView5.1m_ids5.2m_creator_trx_id5.3m_low_limit_id5.4m_up_limit_id5.5可见性分析算法6.MVCC流程模拟6.1RC隔离级别6.2RR隔离......
  • centos安装mysql5.7
    1、首先,我们需要先在CentOS系统上安装wget命令,命令如下:sudoyum-yinstallwget2、安装MySQL数据库前,建议我们先对系统进行升级,以确保系统有最新的安全补丁和软件包,命令如下:sudoyumupdate-y 3、安装MySQL实例时,需要用到GCC编译器,可以通过以下方式来安装:sudoyuminstall......
  • mysql学习整理所有问题
    mysql中的者则表达式(也算做是模糊查询)使用//.来匹配有.的字符 数字或者字母后边加上?表示数字或者字母可选还是不可选  拼接字符串concat()  文本处理函数  同时指定两个列进行全文搜索(前提是这两个列必须增加索引)和against(“”inboolenmode)进行连用......
  • 数据量大的时候,要使用 redis 而不用 mysql
    Redis和MySQL都是广泛使用的数据库,但它们适用于不同的场景和需求。MySQL是一个关系型数据库,它适用于存储大量的结构化数据,并且提供复杂的数据查询和事务处理能力。它适合于需要进行深度数据分析和复杂joins的场景。Redis是一个内存中的数据结构存储系统,通常用作数据库、缓......
  • 浅析MySQL中的ACID实现
    浅析MySQL中的ACID实现一、原子性(Atomicity)二、一致性(Consistency)三、隔离性(Isolation)事务隔离级别隔离性实现四、持久性(Durability)五、技术总结日志系统并发控制机制事务管理与状态跟踪故障恢复机制MySQL的InnoDB存储引擎通过多种底层机制来实现ACID......
  • MySQL错误-this is incompatible with sql_mode=only_full_group_by完美解决方案
    解决方案一:使用函数ANY_VALUE()包含报错字段SELECTANY_VALUE(ID),USER_ID,ANY_VALUE(problems),ANY_VALUE(last_updated_date)FROMt_iov_help_feedbackGROUPBYUSER_ID; 解决方案二:通过sql语句暂时性修改sql_mode去掉ONLY_FULL_GROUP_BY,重新设置SET@@global.sql_m......
  • 智慧医养大数据公共服务系统(JSP+java+springmvc+mysql+MyBatis)
    本项目包含程序+源码+数据库+LW+调试部署环境,文末可获取一份本项目的java源码和数据库参考。项目文件图 项目介绍随着老龄化社会的到来和大数据技术的发展,智慧医养结合的公共服务系统成为社会关注的热点。这一系统能够集成医疗、养老、健康管理等数据,通过智能分析和处理,......