专业编程基础技术教程

网站首页 > 基础教程 正文

mysql与时间有关的查询 mysql与时间有关的查询方法

ccvgpt 2024-11-07 09:54:49 基础教程 11 ℃

date(str)函数可以返回str中形如"1997-05-26"格式的日期,str要是合法的日期的表达式,如2008-08-08 22:20:46

时间是可以比较大小的,例如:

mysql与时间有关的查询 mysql与时间有关的查询方法

#  两个时间要写成year-month-day形式,例"1997-05-26"
select * from TASK where date(deadline) >' ' and  date(create_time)<' '
#  [date]用year-month-day替换,month要两位,不够补0
select * from TASK where date(deadline) between date_sub('[date]', INTERVAL 6 day) and '[date]'

字符串转为日期STR_TO_DATE

18 [date]严格按照"2015-03-06 12:00:00"这种格式替换
update TASK set finish_time=STR_TO_DATE('[date]', '%Y-%m-%d %H:%i:%s') where task_id=' '

日期的加减date_sub和date_add

#  [date]用year-month-day替换,month要两位,不够补0
select * from TASK where date(deadline) between date_sub('[date]', INTERVAL 6 day) and '[date]'
#  [date]用year-month-day替换,month要两位,不够补0
select * from TASK where date(create_time) between date_sub('[date]', INTERVAL 6 day) and '[date]'
# INTERVAL后面也可以跟month、year

模糊查询%

# 匹配含有[date]的字段
select * from TASK where deadline like '%[date]%'

附录: 日期格式化(format)-%Y-%m-%d %H:%i:%S

| | 值 | 含义 |

| :------- | :---------------------------------------------------- | :------------------------------------------------ |

| 秒 | %S、%s | 两位数字形式的秒( 00,01, ..., 59) |

| 分 | %I、%i | 两位数字形式的分( 00,01, ..., 59) |

| 小时 | %H | 24小时制,两位数形式小时(00,01, ...,23) |

| %h | 12小时制,两位数形式小时(00,01, ...,12) | |

| %k | 24小时制,数形式小时(0,1, ...,23) | |

| %l | 12小时制,数形式小时(0,1, ...,12) | |

| %T | 24小时制,时间形式(HH:mm:ss) | |

| %r | 12小时制,时间形式(hh:mm:ss AM 或 PM) | |

| %p | AM上午或PM下午 | |

| 周 | %W | 一周中每一天的名称(Sunday,Monday, ...,Saturday) |

| %a | 一周中每一天名称的缩写(Sun,Mon, ...,Sat) | |

| %w | 以数字形式标识周(0=Sunday,1=Monday, ...,6=Saturday) | |

| %U | 数字表示周数,星期天为周中第一天 | |

| %u | 数字表示周数,星期一为周中第一天 | |

| 天 | %d | 两位数字表示月中天数(01,02, ...,31) |

| %e | 数字表示月中天数(1,2, ...,31) | |

| %D | 英文后缀表示月中天数(1st,2nd,3rd ...) | |

| %j | 以三位数字表示年中天数(001,002, ...,366) | |

| 月 | %M | 英文月名(January,February, ...,December) |

| %b | 英文缩写月名(Jan,Feb, ...,Dec) | |

| %m | 两位数字表示月份(01,02, ...,12) | |

| %c | 数字表示月份(1,2, ...,12) | |

| 年 | %Y | 四位数字表示的年份(2015,2016...) |

| %y | 两位数字表示的年份(15,16...) | |

| 文字输出 | %文字 | 直接输出文字内容 |

最近发表
标签列表