首页 > 数据库 >mysql--时间

mysql--时间

时间:2023-01-15 20:44:29浏览次数:32  
标签:10 15 -- mysql 时间 DUAL 2023 DATE SELECT

mysql时间相关类型:

date  //年月日 2023-1-15
time  //时分秒 10:10:10
datetime //年月日时分秒 2023-1-15 10:10:10
timestamp //时间戳,插入,更新时自动写入当前时间

注意mysql的时间格式,日期尽量使用 yyyy-mm--dd的形式,虽然其他的日期形式也行,但这是首选的,排除多义性。

例如04/05/06可以是2004-05-06 也可以是2006-05-04.

date 和datetime

//datetime复制给date 时间部分微00:00:00 日期一样。
CREATE TABLE date1 ( `date` DATE ); INSERT INTO date1 VALUES ('2023-1-15 10:10:10'); SELECT * FROM date1;  //结果为2023-1-15

//date和datetime比较
//mysql仅将date和datetime中的年月日比较,忽略了时间。
//通常使用Date函数来比较
Date('2023-1-15 10:10:10') = '2023-1-15'

Date函数来取时间类型的年月日, Time函数来取时间类型的时分秒, Year函数返回年份, Month返回月份。

select * from 表 where Year(`date`) = 2023 AND Month(`date`) = 9
//返回时间在九月份以内的行

相关函数

CURRENT_DATE()    //当前日期
CURRENT_TIME()    //当前时间
CURRENT_TIMESTAMP    //当前时间戳
DATE(datetime)    //返回datetime的日期部分
DATE_ADD(date2, INTERVAL d_value d_type)    //在date2上增加日期或时间
SELECT CURRENT_DATE() FROM DUAL;        //2023-01-15
SELECT CURRENT_TIME() FROM DUAL;        //20:15:00
SELECT CURRENT_TIMESTAMP() FROM DUAL;     //2023-01-15 20:15:23

SELECT DATE('2023-1-15 10:10:10') FROM DUAL;  //2023-01-15
SELECT DATE_ADD('2023-1-15 10:10:10', INTERVAL 2 YEAR) FROM DUAL;  //2025-01-15 10:10:10
SELECT DATE_ADD('2023-1-15 10:10:10', INTERVAL 2 MINUTE) FROM DUAL; //2023-01-15 10:12:10 

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

DATE_SUB(date2, INTERVAL d_value d_type)  //date2减去给定的时间
NOW()                        //返回当前时间
DATEDIFF(date1, date2)             //两个时间差的天数,date1 - date2,结果可以为负
UNIX_TIMESTAMP()                 //返回1907-1-1到现在的秒数
FROM_UNIXTIME()                 //回复unix_timestamp
SELECT DATE_SUB('2023-1-15 10:10:10', INTERVAL 2 YEAR) FROM DUAL; //2021-01-15 10:10:10
SELECT DATE_SUB('2023-1-15 10:10:10', INTERVAL 2 MINUTE) FROM DUAL; //2023-01-15 10:08:10
SELECT NOW() FROM DUAL; //2023-01-15 20:30:33
SELECT DATEDIFF('2023-1-15 10:10:10', '2023-1-10 10:0:0'); //5
SELECT UNIX_TIMESTAMP() FROM DUAL;   //1673785871
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP()) FROM DUAL; //2023-01-15 20:31:52
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(), '%Y-%m-%d') FROM DUAL; //2023-01-15
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(), '%Y-%m-%d %H:%i:%s') FROM DUAL; //2023-01-15 20:33:07

 

标签:10,15,--,mysql,时间,DUAL,2023,DATE,SELECT
From: https://www.cnblogs.com/dadishi/p/17054084.html

相关文章

  • 窗口更新了数据,一定要commit才生效!
    记录一个非常stupid的记录在生产环境上修改了数据,然后再做查询,发现数据始终和服务器查询到的结果始终不相同。再让同事去查询,同事和服务器的一致,我的数据始终不一样。......
  • flask_socketio_cors
    D:\code_gitee\flask_socketio_online-ping-demo-master\online-ping-demo-master\python3\app.py#!/usr/bin/python3#-*-coding:utf-8-*-fromflaskimportcopy_c......
  • Java流程控制
    Java流程控制用户交互ScannerScanner对象java.util.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入。基本语法:Scanners=newScanner(System.in......
  • 每日食词—day104
    unexpectedadj.想不到、出乎意料、意想不到、意料之外mockupn. adj.模型、实体模型reactiveadj.反应的、反应式actuatorn.执行器、驱动器dumpv. n.......
  • 6.DI依赖注入
    1.构造器注入  前面已经使用过2.set注入【重点】  依赖注入:set注入      依赖:bean对象的创建依赖于spring容器    注入:bean对象中的所有属性由spring容......
  • Modbus TCP
    ModbusTCP数据帧ModbusTCP的数据帧可分为两部分:MBAP+PDU。报文头MBAPMBAP为报文头,长度为7字节事务处理标识协议标识长度单元标识符2字节2字节2字节1字节......
  • 基于matlab的BOC调制信号捕获仿真
    1.算法描述       随着全球导航卫星系统的高速发展,导航系统的数量也越来越多,比如使用最广泛的GPS导航系统,以及越来越备受关注的中国北斗导航系统等.因此导航频......
  • GO map按某字段排序
    packagemainimport("fmt""sort")typefrequencystruct{charstringfreint}funcfrequencies(sstring)[]frequency{m:=make(map[string]int)f......
  • C++中string占用内存大小
    转自:https://blog.csdn.net/DLUTBruceZhang/article/details/98222351.例子intmain(){strings="abc";cout<<sizeof(s)<<"\n";cout<<sizeof(string)<<"......
  • windows terminal 配置从当前目录打开 startingDirectory (vscode终端中按下wt后直接打
    我的需求我不想用vscode的终端运行项目,我想在windowsterminal里运行项目我想在vscode的终端里按下wt,然后直接打开一个新的windowsterminal窗口,而且船新的wt窗口的目......