1. 关于Mysql 中的日期处理
1.1 每一个数据库处理日期的时候,采用的机制不同,日期处理机制都有一套自己的机制,
**实际开发中,一般使用日期类型使用日期字符串来表示日期。**
2. mysql 中的日期处理
str_to_date
date_format
3. str_to_date
3.1 将"日期字符串"转换为"日期类型"
varchar -> date
3.2 处理结果为Date类型
3.3 函数的使用格式:
str_to_date('日期字符串', '日期格式')
3.4 日期格式
Java中的日期格式:
yyyy MM dd HH mm ss SSS(毫秒)
SimpleDateFormat sdt = new SimpleDateFromt('yyyy-MM-dd');
Date date = sdf.parse("2017-04-08")
Mysql中的日期格式:
%Y
%m
%d
%H
%i
Mysql中默认的日期格式:
%Y-%m-%d,如果where条件中日期格式的字符串为'2017-04-08'这种形式的话,
mysql 会自动将其转换成日期,然后进行对比
以下两个sql 一样
select * from emp where hiredate = '1981-12-03';
select * from emp where hiredate = str_to_date('1981-12-03', '%Y-%m-%d');
新增记录的时候也是允许的
create table stu(
-> id int(10),
-> name varchar(32),
-> birth date);
insert into stu(id, name, birth) values( 1, 'zhangsan', '2017-04-08');
insert into stu(id, name, birth) values( 1, 'zhangsan', str_to_date('08-04-2017', '%m-%d-%Y'));
4. date_format
4.1 作用
将date转换为特定格式的字符串
4.2 运算结果:
varchar
4.3 语法
date_format(日期数据,'日期格式')
Java中日期格式:
SimpleDateFormat sdf = new SimpleDateFormat('yyyy-MM-dd HH:mm:ss');
Date nowTime = new Date();
String strTime = sdf.formate(nowTime);
4.4
以下两种输入一致,mysql自动将日期格式转换为%Y-%m-%d 的字符串了。
> select date_format(hiredate, '%Y-%m-%d') from emp;
> select hiredate from emp;
4.5 fomate函数,是对数字进行转换的。
比如千分位等等。。。