码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • MySQL中datetime、date和timestamp的区别


    尚学堂给同学们带来全新的Java300集课程啦!java零基础小白自学Java必备优质教程_手把手图解学习Java,让学习成为一种享受_哔哩哔哩_bilibili

    一、DATETIME
    显示格式:YYYY-MM-DD HH:MM:SS
    时间范围:[ '1000-01-01 00:00:00'到'9999-12-31 23:59:59']
    二、DATE
    显示格式:YYYY-MM-DD
    时间范围:['1000-01-01'到'9999-12-31']
    三、TIMESTAMP
    显示格式:YYYY-MM-DD HH:MM:SS
    时间范围:[ '1970-01-01 00:00:00'到'2037-12-31 23:59:59']
    TIMESTAMP注意点:
    TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 在创建新记录和修改现有记录的时候都对这个数据列刷新。
    TIMESTAMP DEFAULT CURRENT_TIMESTAMP 在创建新记录的时候把这个字段设置为当前时间,但以后修改时,不再刷新它。
    TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 在创建新记录的时候把这个字段设置为0,以后修改时刷新它。
    TIMESTAMP DEFAULT ‘yyyy-mm-dd hh:mm:ss’ ON UPDATE CURRENT_TIMESTAMP 在创建新记录的时候把这个字段设置为给定值,以后修改时刷新它

    1、TIMESTAMP列不为空时,默认值可以为“0000-00-00 00:00:00”,但不能为null。
    2、一个表可以存在多个TIMESTAMP列,但一个表只有一个TIMESTAMP类型的字段可以在默认值或者UPDATE部分用CURRENT_TIMESTAMP,即设置为数据更新而改变为数据库系统当前值。
    3、TIMESTAMP列的默认值是CURRENT_TIMESTAMP常量值。当记录数据发生变化的时候,TIMESTAMP列会自动将其值设定为CURRENT_TIMESTAMP。
    4、TIMESTAMP列创建后的格式是:
    ALTER TABLE course
    ADD COLUMN birthday timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;

    ALTER TABLE course
    ADD COLUMN birthday timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP ;

    ALTER TABLE course
    ADD COLUMN birthday timestamp NULL AFTER cname;

    四、日期格式转换
    1、字符串转日期
    select STR_TO_DATE('2013-01-29 13:49:18', '%Y-%m-%d %H:%i:%s')
    2、日期转字符串
    select DATE_FORMAT('2013-01-29 13:49:18', '%Y-%m-%d %H:%i:%s')

    五、日期的中常用的年月日时分秒星期月份等获取方法
    select TIMESTAMP('2013-01-29 13:50:27');
    select DATE('2013-01-29 13:50:27');
    select YEAR('2013-01-29 13:50:27');
    select MONTH(('2013-01-29 13:50:27');
    select WEEK('2013-01-29 13:50:27');
    select DAY('2013-01-29 13:50:27');
    select TIME('2013-01-29 13:50:27');
    select CURTIME();
    select CURDATE();
    select CURRENT_DATE;
    select CURRENT_TIME;
    select CURRENT_TIMESTAMP;
    select NOW()

    六、日期的运算:
    SELECT DATE_ADD('2013-01-29 13:50:27', INTERVAL 1 DAY);
    -> '2013-01-30 13:50:27'
    SELECT DATE_ADD('2013-01-29 13:50:27', INTERVAL 1 HOUR);
    -> '2013-01-29 14:50:27'
    SELECT DATE_ADD('2013-01-29 13:50:27', INTERVAL 1 MONTH);
    -> '2013-02-28 13:50:27'

  • 相关阅读:
    HTML标签详解 HTML5+CSS3+移动web 前端开发入门笔记(四)
    el-table(vue2中)滚动条被固定列盖住
    51单片机语音进店迎宾器统计进店人数可定制播报铃声(可选PCB)
    UEFI 安装 Debian12 Linux 物理机虚拟机VMware通用
    深入react源码看setState究竟做了什么?
    Altium Designer实用系列(四)----Ultra Librarian 下载芯片原理图库及封装并导入AD
    Ubuntu Server CLI专业提示
    快速入门Spring Cloud Hystrix(服务降级、服务熔断、服务监控)
    Centos7系统重装报错“ /dev/root does not exist“解决办法
    vue 项目中一些问题记录
  • 原文地址:https://blog.csdn.net/jmysql/article/details/126877060
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号