数据库应用中对日期和时间的操作是非常常用的,MySQL自带了许多很有用的函数,可以帮助我们便捷地实现某些需求。下面我们来介绍一下相关的MySQL日期与实践函数。 获取当前日期: mysql> SELECT curdate();+------------+| curdate() |+------------+| 2010-1
数据库应用中对日期和时间的操作是非常常用的,MySQL自带了许多很有用的函数,可以帮助我们便捷地实现某些需求。下面我们来介绍一下相关的MySQL日期与实践函数。
获取当前日期:
mysql> SELECT curdate(); +------------+ | curdate() | +------------+ | 2010-11-16 | +------------+ 1 row in set
mysql> SELECT CURRENT_DATE(); +----------------+ | CURRENT_DATE() | +----------------+ | 2010-11-16 | +----------------+ 1 row in set
获取当前时间:
mysql> SELECT curtime(); +-----------+ | curtime() | +-----------+ | 12:48:40 | +-----------+ 1 row in set
mysql> SELECT CURRENT_TIME(); +----------------+ | CURRENT_TIME() | +----------------+ | 12:49:00 | +----------------+ 1 row in set
获取当前时间日期:
mysql> SELECT now(); +---------------------+ | now() | +---------------------+ | 2010-11-16 12:50:39 | +---------------------+ 1 row in set
mysql> SELECT CURRENT_TIMESTAMP(); +---------------------+ | CURRENT_TIMESTAMP() | +---------------------+ | 2010-11-16 12:51:01 | +---------------------+ 1 row in set
注意:在一个单一询问中,对诸如NOW() 的函数多次访问总是会得到同样的结果。
日期增减:
DATE_ADD(date,INTERVAL expr type) DATE_SUB(date,INTERVAL expr type)
这些函数执行日期运算。
- date 是一个 DATETIME 或DATE值,用来指定起始时间。
- expr 是一个表达式,用来指定从起始日期添加或减去的时间间隔值。 Expr是一个字符串;对于负值的时间间隔,它可以以一个 '-'开头。
- type 为关键词,它指示了表达式被解释的方式。
- 关键词INTERVA及 type 分类符均不区分大小写。
MySQL 允许任何expr 格式中的标点分隔符。表中所显示的是建议的 分隔符。若 date 参数是一个 DATE 值,而你的计算只会包括 YEAR、MONTH和DAY部分(即, 没有时间部分), 其结果是一个DATE 值。否则,结果将是一个 DATETIME值。
指定日期1秒后:
mysql> SELECT DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 SECOND); +----------------------------------------------------+ | DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 SECOND) | +----------------------------------------------------+ | 2011-01-01 00:00:00 | +----------------------------------------------------+ 1 row in set
指定日期1天后:
mysql> SELECT DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 DAY); +-------------------------------------------------+ | DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 DAY) | +-------------------------------------------------+ | 2011-01-01 23:59:59 | +-------------------------------------------------+ 1 row in set
指定日期减去10小时:
mysql> SELECT DATE_ADD('2011-01-01 00:00:00', INTERVAL '-1 10' DAY_HOUR); +------------------------------------------------------------+ | DATE_ADD('2011-01-01 00:00:00', INTERVAL '-1 10' DAY_HOUR) | +------------------------------------------------------------+ | 2010-12-30 14:00:00 | +------------------------------------------------------------+ 1 row in set
指定日期的一个月前:
mysql> SELECT DATE_SUB('2011-01-02', INTERVAL 31 DAY); +-----------------------------------------+ | DATE_SUB('2011-01-02', INTERVAL 31 DAY) | +-----------------------------------------+ | 2010-12-02 | +-----------------------------------------+ 1 row in set
指定日期的前一天:
mysql> SELECT date_add('2011-01-01', INTERVAL -1 DAY); +-----------------------------------------+ | date_add('2011-01-01', INTERVAL -1 DAY) | +-----------------------------------------+ | 2010-12-31 | +-----------------------------------------+ 1 row in set
将日期时间转换成指定格式:
DATE_FORMAT(date,format)
根据format 字符串安排date 值的格式。所有其它字符都被复制到结果中,无需作出解释。注意,'%'字符要求在格式指定符之前。月份和日期说明符的范围从零开始,原因是 MySQL允许存储诸如 '2004-00-00'的不完全日期。
mysql> SELECT DATE_FORMAT( FROM_UNIXTIME( 1290996580 ), '%Y-%m-%d %H:%i:%s' ); +-----------------------------------------------------------------+ | DATE_FORMAT( FROM_UNIXTIME( 1290996580 ), '%Y-%m-%d %H:%i:%s' ) | +-----------------------------------------------------------------+ | 2010-11-29 10:09:40 | +-----------------------------------------------------------------+ 1 row in set
mysql> SELECT DATE_FORMAT( FROM_UNIXTIME( 1290996580 ) , '%Y-%m-%d' ); +---------------------------------------------------------+ | DATE_FORMAT( FROM_UNIXTIME( 1290996580 ) , '%Y-%m-%d' ) | +---------------------------------------------------------+ | 2010-11-29 | +---------------------------------------------------------+ 1 row in set
下面两个函数
FROM_UNIXTIME(unix_timestamp) , FROM_UNIXTIME(unix_timestamp,format)
返回'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS 格式值的unix_timestamp参数表示,具体格式取决于该函数是否用在字符串中或是数字语境中。
若format 已经给出,则结果的格式是根据format 字符串而定。 format 可以包含同DATE_FORMAT() 函数输入项列表中相同的说明符。
mysql> SELECT FROM_UNIXTIME(875996580); +--------------------------+ | FROM_UNIXTIME(875996580) | +--------------------------+ | 1997-10-05 04:23:00 | +--------------------------+ 1 row in set
mysql> SELECT FROM_UNIXTIME(875996580) + 0; +------------------------------+ | FROM_UNIXTIME(875996580) + 0 | +------------------------------+ | 19971005042300.000000 | +------------------------------+ 1 row in set
MySql unix时间转换成SQLServer适用的时间格式:
mysql> SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(), '%Y-%m-%d %H:%i:%s'); +------------------------------------------------------+ | FROM_UNIXTIME(UNIX_TIMESTAMP(), '%Y-%m-%d %H:%i:%s') | +------------------------------------------------------+ | 2010-11-16 19:12:11 | +------------------------------------------------------+ 1 row in set

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于架构原理的相关内容,MySQL Server架构自顶向下大致可以分网络连接层、服务层、存储引擎层和系统文件层,下面一起来看一下,希望对大家有帮助。

方法:1、利用right函数,语法为“update 表名 set 指定字段 = right(指定字段, length(指定字段)-1)...”;2、利用substring函数,语法为“select substring(指定字段,2)..”。

mysql的msi与zip版本的区别:1、zip包含的安装程序是一种主动安装,而msi包含的是被installer所用的安装文件以提交请求的方式安装;2、zip是一种数据压缩和文档存储的文件格式,msi是微软格式的安装包。

在mysql中,可以利用char()和REPLACE()函数来替换换行符;REPLACE()函数可以用新字符串替换列中的换行符,而换行符可使用“char(13)”来表示,语法为“replace(字段名,char(13),'新字符串') ”。

转换方法:1、利用cast函数,语法“select * from 表名 order by cast(字段名 as SIGNED)”;2、利用“select * from 表名 order by CONVERT(字段名,SIGNED)”语句。

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于MySQL复制技术的相关问题,包括了异步复制、半同步复制等等内容,下面一起来看一下,希望对大家有帮助。

在mysql中,可以利用REGEXP运算符判断数据是否是数字类型,语法为“String REGEXP '[^0-9.]'”;该运算符是正则表达式的缩写,若数据字符中含有数字时,返回的结果是true,反之返回的结果是false。

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了mysql高级篇的一些问题,包括了索引是什么、索引底层实现等等问题,下面一起来看一下,希望对大家有帮助。


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Dreamweaver Mac version
Visual web development tools

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Notepad++7.3.1
Easy-to-use and free code editor

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

SublimeText3 Mac version
God-level code editing software (SublimeText3)
