首页 > 其他分享 >时间函数

时间函数

时间:2023-11-05 16:25:57浏览次数:66  
标签:00 函数 created courses 课程 时间 DATE SELECT

二、时间函数

1. 使用 NOW() 、 CURDATE()、CURTIME() 获取当前时间

  • NOW() 可以用来返回当前日期和时间 格式:YYYY-MM-DD hh:mm:ss
  • CURDATE() 可以用来返回当前日期 格式:YYYY-MM-DD
  • CURTIME() 可以用来返回当前时间 格式:hh:mm:ss
    请编写 SQL 语句,向记录表 records 中插入当前的日期。
INSERT INTO records 
VALUES (NOW());

2. 使用 DATE()、TIME() 函数提取日期和时间

使用 DATE() 、 TIME() 函数从课程表 courses 中查询课程的名字 name 和课程创建时间 created_at,从课程创建时间 created_at 中提取出创建课程的日期与时间,用 created_date 和 created_time 作为结果集列名。

SELECT `name`, `created_at`, 
	DATE_FORMAT(DATE(`created_at`),"%Y-%m-%d") AS `created_date`, 
	DATE_FORMAT(TIME(`created_at`),"%H:%i:%s") AS `created_time`
FROM `courses`;

3. 使用 EXTRACT() 函数提取指定的时间信息

  • EXTRACT() 函数用于返回日期/时间的单独部分,如 YEAR (年)、MONTH (月)、DAY (日)、HOUR (小时)、MINUTE (分钟)、 SECOND (秒)。
    请编写 SQL 语句,从课程表 courses 中查询所有课程的课程名称( name )和课程创建时间( created_at )的小时数,将提取小时数的列名起别名为 created_hour。
SELECT name,EXTRACT(HOUR FROM created_at )as created_hour
FROM courses 

4. 使用 DATE_FORMAT() 格式化输出日期

请编写 SQL 语句,查询 courses 表,查询课程创建时间,按照 ’yyyy-MM-dd HH:mm:ss’ 的格式返回结果,返回列名显示为 DATE_FORMAT。

SELECT DATE_FORMAT(created_at,'%Y-%m-%d %H:%i:%s')AS DATE_FORMAT
FROM courses

5. 使用 DATE_ADD() 增加日期

请编写 SQL 语句,查询 courses 表中课程的课程创建日期,并将课程创建日期均推迟一天,最后返回课程名称 name 及修改后的课程创建时间,修改后的课程创建时间命名为 new_created 。

SELECT name,DATE_ADD(created_at,interval 1 day)AS new_created 
FROM courses ;

5. 使用 DATE_SUB() 减少日期

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

SELECT id ,name ,DATE_SUB(created_at,interval 1 day)AS new_created 
FROM courses ;

6. datediff()方法和timestampdiff()方法的应用

6.1 DATEDIFF(date1, date2)
DATEDIFF(date1, date2):计算两个日期之间的天数差异。
date1和date2是日期值或日期时间值。

SELECT DATEDIFF('2023-07-01', '2023-06-28'); -- 返回结果为 3
SELECT DATEDIFF('2023-06-28', '2023-07-01'); -- 返回结果为 -3

6.2 TIMESTAMPDIFF(unit, start_datetime, end_datetime)

SELECT TIMESTAMPDIFF(DAY, '2023-06-28 12:00:00', '2023-07-01 10:00:00'); -- 返回结果为 2
SELECT TIMESTAMPDIFF(HOUR, '2023-06-28 12:00:00', '2023-06-29 14:30:00'); -- 返回结果为 26
SELECT TIMESTAMPDIFF(MINUTE, '2023-06-28 12:00:00', '2023-06-28 12:30:00'); -- 返回结果为 30

请编写 SQL 语句,查询 courses 表,计算 '2020-04-22' 与课程创建时间的月数差,返回列名显示为 MonthDiff。

SELECT TIMESTAMPDIFF(month,created_at,'2020-04-22')AS MonthDiff
FROM courses ;

标签:00,函数,created,courses,课程,时间,DATE,SELECT
From: https://www.cnblogs.com/3456939606zwp/p/17810624.html

相关文章

  • 算数函数
    一、算数函数1.使用AVG()函数求数值列的平均值请编写SQL语句,查询教师表teachers中教师邮箱为'@qq.com'结尾的年龄的平均值,最后返回结果列名显示为'average_teacher_age'。SELECTavg(age)ASaverage_teacher_ageFROMteachersWHEREemaillike'%@qq.com';2.......
  • 试验3 c语言函数应用编程
    实验任务1源代码1#include<stdio.h>2#include<stdlib.h>3#include<time.h>4#include<windows.h>5#defineN8067voidprint_text(intline,intcol,chartext[]);8voidprint_spaces(intn);9voidprint_blank_lines(intn)......
  • 实验3 C语言函数应用编程
    一、实验目的二、实验准备三、实验内容1.实验任务1源代码:1#include<stdio.h>2#include<stdlib.h>3#include<time.h>4#include<windows.h>5#defineN8067voidprint_text(intline,intcol,chartext[]);//函数声明8voidprint_spaces(in......
  • 实验3 C语言函数应用编程
    实验任务1:#include<stdio.h>#include<stdlib.h>#include<time.h>#include<windows.h>#defineN80voidprint_text(intline,intcol,chartext[]);voidprint_spaces(intn);voidprint_blank_lines(intn);intmain(){intline,col,......
  • 实验3 C语言函数应用编程
    1、实验1实验1运行结果  实现了每隔一秒随机弹出“hi,November~”。2、实验2实验2-1源代码1#include<stdio.h>2longlongfac(intn);34intmain()5{6inti,n;78printf("Entern:");9scanf("%d",&n);1011for......
  • 基于时间序列联动分析的补货与定价策略研究
    IntroductionThisisanexcellentpaperofmathematicalmodelingresearchwiththehonourofNationalSecondPrize(<2.3%).ResearchonReplenishmentandPricingStrategiesBasedonTimeSeriesLinkageAnalysisZhihaoLi,PaiLin,KaidaHuangChinaUn......
  • JUC并发编程学习(十一)四大函数式接口(必备)
    四大函数式接口(必备)程序员:泛型、反射、注解、枚举新时代程序员:lambda表达式、链式编程、函数式接口、Stream流式计算函数式接口:只有一个方法的接口@FunctionalInterfacepublicinterfaceRunnable{publicabstractvoidrun();}//@FunctionalInterface函数式接口,超......
  • EasyUI Messager 消息框点击右上角x无法执行回掉函数解决
    版本:1.30和1.3.2的可参考以下网址;当前版本1.7.0参考上面的思路在js文件里面查找messager-iconmessager字符串。如下图所示只找到了3处。此时还没有看到用的是那个一个。有回头看一下官网。如下图所示。实用$.messager.alert共有四个参数。根据此处的想法选择如下图所示......
  • 如何判断一个function是否是函数式组件?
    要判断一个函数是否是函数式组件,您可以考虑以下几个标准:纯函数性质:函数式组件应该是一个纯函数,即对于相同的输入,始终返回相同的输出,而且没有副作用。它不应该修改任何外部状态或改变传入的参数。如果函数修改了全局变量、文件、数据库或其他外部资源,那它就不是纯函数。不可变性:函数......
  • Hivesql字符截取函数错用
    1.背景       最近在使用instr进行字符截取时出现了字符截断的情况,案例是需要获取出"红河哈尼族矫族自治州(xxxx(红河)有限公司)"里面的"xxxx(红河)有限公司"内容,结果获取到的内容是"xxxx(红河",该语句针对只有一对括号时没有问题,当出现这种有两个括号时就会出现截断的问题,......