lintcode-2032 · 将课程创建日期均提前一天

举报
搞前端的半夏 发表于 2022/01/24 23:26:31 2022/01/24
【摘要】 描述请编写 SQL 语句,修改 courses 表中课程的课程创建日期,将课程创建日期均提前一天,最后返回课程 id 、课程名称 name 及修改后的开课日期,修改后的课程创建日期命名为 new_created 。表定义: courses(课程表)列名类型注释idint unsigned主键namevarchar课程名称student_countint学生总数created_atdate课...

描述

请编写 SQL 语句,修改 courses 表中课程的课程创建日期,将课程创建日期均提前一天,最后返回课程 id 、课程名称 name 及修改后的开课日期,修改后的课程创建日期命名为 new_created

表定义: courses(课程表)

列名 类型 注释
id int unsigned 主键
name varchar 课程名称
student_count int 学生总数
created_at date 课程创建时间
teacher_id int 讲师 id

**

  • 结果列名需要重命名
  • 如果查询不到创建时间,则无法修改

样例

样例一:

表内容 : courses

id name student_count created_at teacher_id
1 Advanced Algorithms 880 2020-6-1 4
2 System Design 1350 2020-7-18 3
3 Django 780 2020-2-29 3
4 Web 340 2020-4-22 4
5 Big Data 700 2020-9-11 1
6 Artificial Intelligence 1660 2018-5-13 3
7 Java P6+ 780 2019-1-19 3
8 Data Analysis 500 2019-7-12 1
10 Object Oriented Design 300 2020-8-8 4
12 Dynamic Programming 2000 2018-8-18 1

在运行你的 SQL 语句之后,表应返回:

id name new_created
1 Advanced Algorithms 2020-5-31
2 System Design 2020-7-17
3 Django 2020-2-28
4 Web 2020-4-21
5 Big Data 2020-9-10
6 Artificial Intelligence 2018-5-12
7 Java P6+ 2019-1-18
8 Data Analysis 2019-7-11
10 Object Oriented Design 2020-8-7
12 Dynamic Programming 2018-8-17

样例二:

表内容 : courses

id name student_count created_at teacher_id
1 Advanced Algorithms 880 2020-6-1 4
6 Artificial Intelligence 1660 2018-5-13 3
7 Java P6+ 780 null 3

在运行你的 SQL 语句之后,表应返回:

id name student_count created_at teacher_id
1 Advanced Algorithms 880 2020-5-31 4
6 Artificial Intelligence 1660 2018-5-12 3
7 Java P6+ 780 null 3

题解

使用时间增加函数 DATE_SUB
DATE_SUB() 函数从日期减去指定的时间间隔。

SELECT `id`, `name`, DATE_SUB(`created_at`, INTERVAL 1 DAY) AS `new_created`
/* 从课程表中查询 */
FROM `courses`;
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。