【mysql】Date和String的互相转换(DATE_FORMAT & STR_TO_DATE)

1.Date  ——>  String

使用的函数:DATE_FORMAT(date,format)     date:需要转换的日期       format:格式化的样式

format样式整理:

年:  %Y  显示四位 : 2015            %y    只显示后两位  :15

月:  %M 月份的英文显示:October %m  月份的阿拉伯显示:01-12  %b 月份的英文缩略显示:Oct  %c  月份的阿拉伯显示:1-12

日:  %d 阿拉伯显示:00-31        %D 带有英文后缀:1st-31th     %e 阿拉伯显示:1-31          %j   年的天:001-366

时:  %H :00-23           %h:01-12        %I:01-12      %k:0-23      %l:1-12

分:   %i:00-59

秒:   %S:00-59        %s:00-59

微妙: %f

AM/PM:%p

12小时制时间:%r:   02:02:44 PM

24小时制时间: %T:  14:02:44

周: %W:周的英文显示      %w 周的阿拉伯显示 :0(星期日)-6(星期六)  %a   周的英文缩略显示:Mon-

eg:DATE_FORMAT(now(),"%Y-%m-%d %T")   2015-09-01 17:10:52

DATE_FORMAT(now(),"%Y-%m-%d %H:%i:%s %p")     2015-09-01 17:10:52 PM

2.String ——>Date

使用的函数:STR_TO_DATE(str,format)       str:字符形式的日期       format:格式化样式

eg:   STR_TO_DATE('1992-04-12',"%Y-%m-%d")   输出:1992-04-12(日期形式)

一、获取系统时间函数

1.1、获取当前完整时间

select now();

select current_timestamp;

1.2、获取当前日期

select currnt_date;

1.3、获取当前时间

select current_time;

二、时间的计算

2.1 两年后

select now() + interval '2 years';
select now() + interval '2 year';
select now() + interval '2 y';
select now() + interval '2 Y';
select now() + interval '2y';
2.2 一个月后
select now() + interval '1 month';
2.3 三周前
select now() - interval '3 week';
2.4 十分钟后
select now() + '10 min'; 
2.5 计算两个时间差
select age(now(), timestamp '1989-02-05');
select age(timestamp '2007-09-15');  

三、时间字段的截取


在开发过程中,经常要取日期的年,月,日,小时等值,PostgreSQL 提供一个非常便利的EXTRACT函数。


EXTRACT(field FROM source)

field 表示取的时间对象,source 表示取的日期来源,类型为 timestamp、time 或 interval。


3.1 取年份


david=# select extract(year from now());

3.2 取月份


david=# select extract(month from now());

david=# select extract(day from timestamp '2013-04-13'); 

david=# SELECT EXTRACT(DAY FROM INTERVAL '40 days 1 minute'); 

3.3 查看今天是一年中的第几天


david=# select extract(doy from now()); 

3.4 查看现在距1970-01-01 00:00:00 UTC 的秒数


david=# select extract(epoch from now()); 

3.5 把epoch 值转换回时间戳

david=# SELECT TIMESTAMP WITH TIME ZONE 'epoch' + 1369755555 * INTERVAL '1 second';  
 

postgreSQL时间、日期函数的更多相关文章

  1. PostgreSQL的时间/日期函数使用

    PostgreSQL的常用时间函数使用整理如下: 一.获取系统时间函数 1.1 获取当前完整时间 select now(); david=# select now(); now ----------- ...

  2. [转] PostgreSQL的时间/日期函数使用

    PS:http://blog.csdn.net/love_rongrong/article/details/6712883 字符串模糊比较 日期类型的模糊查询是不能直接进行的,要先转换成字符串然后再查 ...

  3. [转帖]PostgreSQL的时间/日期函数使用

    PostgreSQL的时间/日期函数使用 https://www.cnblogs.com/mchina/archive/2013/04/15/3010418.html 这个博客的 文章目录比上一个好十 ...

  4. SQL-数学、字符串、时间日期函数和类型转换

    --数学函数 --ABS绝对值,select ABS(-99)--ceiling取上限,select CEILING(4.5)--floor去下限select FLOOR(4.5)--power 几次 ...

  5. SQLite中的时间日期函数(转)

    SQLite包含了如下时间/日期函数: datetime().......................产生日期和时间date()...........................产生日期tim ...

  6. SQL servcer 时间日期函数、数据类型转换

    1.时间日期函数 2.数据类型转换 3.习题 建立两个表,一个部门表,一个人员表.部门:部门的编号,部门的名称,部门的职责.人员:人员的编号,姓名,年龄,性别,cid所属部门

  7. SQL server 数据库——数学函数、字符串函数、转换函数、时间日期函数

    数学函数.字符串函数.转换函数.时间日期函数 1.数学函数 ceiling()--取上限  select ceiling(oil) as 油耗上限 from car floor()--取下限 sele ...

  8. SQLite中的时间日期函数

    SQLite包含了如下时间/日期函数: datetime().......................产生日期和时间 date()...........................产生日期 t ...

  9. 【2017-03-13】Tsql 数学函数、字符串函数、转换函数、时间日期函数

    一.数学函数(针对值类型操作) 1.ceiling():取上限 只要小数点后有数字大于0,整数位自动进1 2.floor():取下限 将小数点位舍去,不管小数点位大小 3.round(四舍五入的值,保 ...

  10. SQl Server 函数篇 数学函数,字符串函数,转换函数,时间日期函数

    数据库中的函数和c#中的函数很相似 按顺序来, 这里价格特别的 print  可以再消息栏里打印东西 数学函数 ceiling()  取上限   不在乎小数点后面有多大,直接忽略 floor()   ...

随机推荐

  1. 可扩容分布式session方案

    分布式session有以下几种方案: 1. 基于nfs(net filesystem)的session共享 将共享服务器目录mount各服务器的本地session目录,session读写受共享服务器i ...

  2. [公告]Senparc.Weixin v4.7.0 升级说明(2016-08-08)

    本次升级包含了除QY以外所有的类库,升级内容包括: 1.重构Conatainer结构,删除 ItemCollection 属性,直接使用ContainerBag加入到缓存: 2.重构IContaine ...

  3. 每天一个linux命令(46):vmstat命令

    vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存.进程.CPU活动进行监控.他是对系统的整体情况进行统计,不足之处是无法对某个进程进行深 ...

  4. [大数据之Spark]——Actions算子操作入门实例

    Actions reduce(func) Aggregate the elements of the dataset using a function func (which takes two ar ...

  5. 学习RBAC 用户·角色·权限·表

  6. Entity Framework Code First添加修改及删除单独实体

    对于一个单独实体的通常操作有3种:添加新的实体.修改实体以及删除实体. 1.添加新的实体 Entity Framework Code First添加新的实体通过调用DbSet.Add()方法来实现. ...

  7. jQuery源码分析系列(39) : 动画队列

    data函数在jQuery中只有短短的300行代码,非常不起点 ,剖析源码的时候你会发现jQuery只要在有需要保存数据的地方无时无刻不依赖这个基础设施 动画会调用队列,队列会调用data数据接口还保 ...

  8. UGUI 之获取当前控件的高度

    当Canvas Scaler选择Constant Pixel Size 当前的分辨率会被被固定,可以用RectTransform类里面的.rect变量值获取 height或Width. 在次情况下获取 ...

  9. A Simple OpenGL Shader Example

    A Simple OpenGL Shader Example eryar@163.com Abstract. OpenGL Shading Language, the high-level progr ...

  10. 用扩展开发一个PHP类

    原文:http://my.oschina.net/mickelfeng/blog/122519?p=1 假设我们要用PHP扩展实 现一个类Person,它有一个private的成员变量$_name和两 ...