前言:只有亲手实战过,面试才能有底气不是吗,下面开始进行填充炮弹;

正菜:在工作中有天下午有个女同事是关于提取数据的一个需求,她说她跑了1个小时,数据库都卡死了,跑来让我把她这条SQL跑一下,我一看没写DATE_FORMAT,别急我把他原SQL贴上来。。这时我连忙想到坏了是没写函数把,果然是,怪不得系统跑蹦,挂掉。。。

手撕 MySQL 时间函数及数据库实战演练
2、经我一番修改后的原SQL:

SELECT phone_number,act_id,coupon_id,province_code,start_date,end_date FROM tf_acc_coupon WHERE coupon_id IN
(‘1000000000070223’,‘1000000000023201’) and DATE_FORMAT(end_date,’%Y%m%d’) >DATE_FORMAT(now(),’%Y%m%d’) LIMIT 1,100;

3、特此今天把学习得一些关于时间的函数整理一下,所以经历此事在一般要用时间字段时,先看下数据库的时间格式是那种,在下手去操作,不然有大问题。我们数据库使用的时间格式是第一种。。

SELECT DATE_FORMAT(now(),’%Y%m%d’) AS 北京时间

手撕 MySQL 时间函数及数据库实战演练

SELECT DATE_FORMAT(now(),’%Y%-%m%-%d’) as 时间

手撕 MySQL 时间函数及数据库实战演练

备注:

手撕 MySQL 时间函数及数据库实战演练

1、定义和用法:
DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。
date 参数是合法的日期。
format 规定日期/时间的输出格式。

%Y:年,4 位
%y:年,2 位

2、H 和 h输出的说明:
Date_FORMAT 中如果采用大写的H,则会输出24小时制的时间信息;
Date_FORMAT 中如果采用小写的h,则会输出12小时制的时间信息;

3、输出指定时间日期的格式:
SELECT DATE_FORMAT(‘2012-08-08 17:27:08’,’%Y-%m-%d %h:%i:%s’) as 时间;

4、输出现在时间日期的格式:
select date_format(now(),’%Y-%c-%d %h:%i:%s’);

5、 获取前两天的时间日期的格式:

SELECT DATE_sub(NOW(),INTERVAL 14 day) AS 时间

手撕 MySQL 时间函数及数据库实战演练

相关文章:

  • 2021-10-08
  • 2021-08-23
  • 2021-08-28
  • 2021-06-20
  • 2021-10-26
猜你喜欢
  • 2021-06-12
  • 2021-05-18
  • 2021-09-25
  • 2022-02-09
  • 2021-11-16
  • 2021-12-27
  • 2021-12-25
相关资源
相似解决方案