If there is a table product with a field add_time, whose data type is datetime, someone might write the SQL like this: The code is as follows select * from product where add_time = '2013-01-12' For this statement, if the format you store is YY-mm-dd, then it's OK. If the format you store is: 2013-01-12 23:23:56, then you are in trouble. This is the part where you can use the DATE() function to return the date, so this SQL should be processed as follows: The code is as follows select * from product where Date(add_time) = '2013-01-12' Another one, what if you want to query the products added in January 2013? The code is as follows select * from product where date(add_time) between '2013-01-01' and '2013-01-31' You can also write: select * from product where Year(add_time) = 2013 and Month(add_time) = 1 Now you should know the role of MySQL date functions in dealing with date comparison problems, right? Its date_col value is within the last 30 days: The code is as follows mysql> SELECT something FROM table WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) <= 30; DAYOFWEEK(date) Returns the day of the week index of date (1=Sunday, 2=Monday, ... 7=Saturday). These index values correspond to the ODBC standard. The code is as follows mysql> select DAYOFWEEK('1998-02-03'); -> 3 WEEKDAY(date) Returns the day of the week index of date (0=Monday, 1=Tuesday, ... 6=Sunday). The code is as follows mysql> select WEEKDAY('1997-10-04 22:23:00'); -> 5 mysql> select WEEKDAY('1997-11-05'); -> 2 DAYOFMONTH(date) Returns the day of the month in date, in the range 1 to 31. The code is as follows mysql> select DAYOFMONTH('1998-02-03'); -> 3 DAYOFYEAR(date) Returns the day of the year for date, in the range 1 to 366. The code is as follows mysql> select DAYOFYEAR('1998-02-03'); -> 34 MONTH(date) Returns the month of date, ranging from 1 to 12. The code is as follows mysql> select MONTH('1998-02-03'); -> 2 DAYNAME(date) Returns the day of the week of date. The code is as follows mysql> select DAYNAME("1998-02-05"); -> 'Thursday' MONTHNAME(date) Returns the name of the month in date. The code is as follows mysql> select MONTHNAME("1998-02-05"); -> 'February' QUARTER(date) Returns the quarter of the year for date, in the range 1 to 4. The code is as follows mysql> select QUARTER('98-04-01'); -> 2 If you want to have a more in-depth and systematic study of MySQL, you can refer to the classic book "MySQL King's Road to Promotion". Summarize The above is the method of comparing dates in MySQL that I introduced to you. I hope it will be helpful to you. If you have any questions, please leave me a message and I will reply to you in time. I would also like to thank everyone for their support of the 123WORDPRESS.COM website! You may also be interested in:
|
<<: A brief discussion of 3 new features worth noting in TypeScript 3.7
>>: Detailed explanation of the best configuration for Nginx to improve security and performance
Preface When a Linux is fully set up, you can use...
Basic syntax The use of text-overflow requires th...
This article mainly introduces the sample code of...
Vue calls the PC camera to take pictures in real ...
1. float+overflow:hidden This method mainly trigg...
nginx is our most commonly used server, often use...
Table of contents Preface 1. Use $attrs and $list...
Tips for viewing History records and adding times...
Problem background: There is a requirement to tak...
This article shares the specific code of JavaScri...
Preface: The MySQL database provides a wide range...
Table of contents Question: answer: Reality: Know...
At first I thought it was a speed issue, so I late...
Table of contents Preface 👀 Start researching 🐱🏍...