mysql时间操作函数用法总结
mysql时间日期函数是mysql数据库中最重要的一个东西,下面我来给大家介绍mysql时间日期用法介绍吧,有需要的朋友可参考参考。
一、时间差
datediff:说白了就是用第一个时间去减第二个时间,顺序不能忘记
代码如下 | 复制代码 |
select datediff('2012-08-08', '2012-08-13'); -- -5 |
二、获取当前时间
代码如下 | 复制代码 |
now current_timestamp() ,current_timestamp ,localtime() ,localtime ,localtimestamp -- (v4.0.6) ,localtimestamp() -- (v4.0.6) |
sysdate(); //动态获取系统时间。这个要和now函数区分来,now就好比已经定义了一个变量,sysdate等于变量是在运行到后确定,所以他们有一个时差
//动态获取系统时间。这个要和now函数区分来,now就好比已经定义了一个变量,sysdate等于变量是在运行到后确定,所以他们有一个时差
三、获得当前日期(date)函数
curdate() current_date() ,current_date
四、获得当前时间
代码如下 | 复制代码 |
curtime() current_time() ,current_time |
五、获得当前 UTC 日期时间函数
代码如下 | 复制代码 |
select utc_timestamp(), utc_date(), utc_time(), now() |
六、Mysql日期时间函数
代码如下 | 复制代码 |
set @dt = '2008-09-10 07:15:30.123456'; |
下面的查询选择了所有记录,其date_col的值是在最后30天以内:
代码如下 | 复制代码 |
mysql> SELECT something FROM table |
WEEKDAY(date)
返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。
代码如下 | 复制代码 |
mysql> select WEEKDAY('1997-10-04 22:23:00'); -> 5 mysql> select WEEKDAY('1997-11-05'); -> 2 |
DAYOFMONTH(date)
返回date的月份中日期,在1到31范围内。
代码如下 | 复制代码 |
mysql> select DAYOFMONTH('1998-02-03'); -> 3 |
DAYOFYEAR(date)
返回date在一年中的日数, 在1到366范围内。
代码如下 | 复制代码 |
mysql> select DAYOFYEAR('1998-02-03'); -> 34 |
MONTH(date)
返回date的月份,范围1到12。
代码如下 | 复制代码 |
mysql> select MONTH('1998-02-03'); -> 2 |
DAYNAME(date)
返回date的星期名字。
代码如下 | 复制代码 |
mysql> select DAYNAME("1998-02-05"); -> 'Thursday' |
MONTHNAME(date)
返回date的月份名字。
代码如下 | 复制代码 |
mysql> select MONTHNAME("1998-02-05"); -> 'February' |
QUARTER(date)
返回date一年中的季度,范围1到4。
代码如下 | 复制代码 |
mysql> select QUARTER('98-04-01'); WEEK(date) |
对于星期天是一周的第一天的地方,有一个单个参数,返回date的周数,范围在0到52。2个参数形式WEEK()允许
你指定星期是否开始于星期天或星期一。如果第二个参数是0,星期从星期天开始,如果第二个参数是1,
从星期一开始。
代码如下 | 复制代码 |
mysql> select WEEK('1998-02-20'); -> 7 mysql> select WEEK('1998-02-20',0); -> 7 mysql> select WEEK('1998-02-20',1); -> 8 |
YEAR(date)
返回date的年份,范围在1000到9999。
代码如下 | 复制代码 |
mysql> select YEAR('98-02-03'); -> 1998 |
HOUR(time)
返回time的小时,范围是0到23。
代码如下 | 复制代码 |
mysql> select HOUR('10:05:03'); -> 10 |
MINUTE(time)
返回time的分钟,范围是0到59。
代码如下 | 复制代码 |
mysql> select MINUTE('98-02-03 10:05:03'); -> 5 |
SECOND(time)
回来time的秒数,范围是0到59。
代码如下 | 复制代码 |
mysql> select SECOND('10:05:03'); -> 3 |
PERIOD_ADD(P,N)
增加N个月到阶段P(以格式YYMM或YYYYMM)。以格式YYYYMM返回值。注意阶段参数P不是日期值。
代码如下 | 复制代码 |
mysql> select PERIOD_ADD(9801,2); -> 199803 |
PERIOD_DIFF(P1,P2)
返回在时期P1和P2之间月数,P1和P2应该以格式YYMM或YYYYMM。注意,时期参数P1和P2不是日期值。
代码如下 | 复制代码 |
mysql> select PERIOD_DIFF(9802,199703); DATE_ADD(date,INTERVAL expr type) |
SUBDATE(date,INTERVAL expr type)
这些功能执行日期运算。对于MySQL 3.22,他们是新的。ADDDATE()和SUBDATE()是DATE_ADD()和DATE_SUB()的同义词。
在MySQL 3.23中,你可以使用+和-而不是DATE_ADD()和DATE_SUB()。(见例子)date是一个指定开始日期的
DATETIME或DATE值,expr是指定加到开始日期或从开始日期减去的间隔值一个表达式,expr是一个字符串;它可以以
一个“-”开始表示负间隔。type是一个关键词,指明表达式应该如何被解释。EXTRACT(type FROM date)函数从日期
中返回“type”间隔。下表显示了type和expr参数怎样被关联: type值 含义 期望的expr格式
SECOND 秒 SECONDS
MINUTE 分钟 MINUTES
HOUR 时间 HOURS
DAY 天 DAYS
MONTH 月 MONTHS
YEAR 年 YEARS
MINUTE_SECOND 分钟和秒 "MINUTES:SECONDS"
HOUR_MINUTE 小时和分钟 "HOURS:MINUTES"
DAY_HOUR 天和小时 "DAYS HOURS"
YEAR_MONTH 年和月 "YEARS-MONTHS"
HOUR_SECOND 小时, 分钟, "HOURS:MINUTES:SECONDS"
DAY_MINUTE 天, 小时, 分钟 "DAYS HOURS:MINUTES"
DAY_SECOND 天, 小时, 分钟, 秒 "DAYS HOURS:MINUTES:SECONDS"

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

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

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

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

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

Hot Topics

Full table scanning may be faster in MySQL than using indexes. Specific cases include: 1) the data volume is small; 2) when the query returns a large amount of data; 3) when the index column is not highly selective; 4) when the complex query. By analyzing query plans, optimizing indexes, avoiding over-index and regularly maintaining tables, you can make the best choices in practical applications.

Yes, MySQL can be installed on Windows 7, and although Microsoft has stopped supporting Windows 7, MySQL is still compatible with it. However, the following points should be noted during the installation process: Download the MySQL installer for Windows. Select the appropriate version of MySQL (community or enterprise). Select the appropriate installation directory and character set during the installation process. Set the root user password and keep it properly. Connect to the database for testing. Note the compatibility and security issues on Windows 7, and it is recommended to upgrade to a supported operating system.

InnoDB's full-text search capabilities are very powerful, which can significantly improve database query efficiency and ability to process large amounts of text data. 1) InnoDB implements full-text search through inverted indexing, supporting basic and advanced search queries. 2) Use MATCH and AGAINST keywords to search, support Boolean mode and phrase search. 3) Optimization methods include using word segmentation technology, periodic rebuilding of indexes and adjusting cache size to improve performance and accuracy.

The difference between clustered index and non-clustered index is: 1. Clustered index stores data rows in the index structure, which is suitable for querying by primary key and range. 2. The non-clustered index stores index key values and pointers to data rows, and is suitable for non-primary key column queries.

MySQL is an open source relational database management system. 1) Create database and tables: Use the CREATEDATABASE and CREATETABLE commands. 2) Basic operations: INSERT, UPDATE, DELETE and SELECT. 3) Advanced operations: JOIN, subquery and transaction processing. 4) Debugging skills: Check syntax, data type and permissions. 5) Optimization suggestions: Use indexes, avoid SELECT* and use transactions.

In MySQL database, the relationship between the user and the database is defined by permissions and tables. The user has a username and password to access the database. Permissions are granted through the GRANT command, while the table is created by the CREATE TABLE command. To establish a relationship between a user and a database, you need to create a database, create a user, and then grant permissions.

MySQL and MariaDB can coexist, but need to be configured with caution. The key is to allocate different port numbers and data directories to each database, and adjust parameters such as memory allocation and cache size. Connection pooling, application configuration, and version differences also need to be considered and need to be carefully tested and planned to avoid pitfalls. Running two databases simultaneously can cause performance problems in situations where resources are limited.

MySQL supports four index types: B-Tree, Hash, Full-text, and Spatial. 1.B-Tree index is suitable for equal value search, range query and sorting. 2. Hash index is suitable for equal value searches, but does not support range query and sorting. 3. Full-text index is used for full-text search and is suitable for processing large amounts of text data. 4. Spatial index is used for geospatial data query and is suitable for GIS applications.
