在mysql数据中查询的时间戳


1.普通时间转unix/linux时间戳命令

unix_timestamp()是时间函数

mysql> select  unix_timestamp(20131001);

时间格式: YYYY-MM-DD HH:MM:SS 或 YYMMDD 或 YYYYMMDD  

+--------------------------+

| unix_timestamp(20131001) |

+--------------------------+

|               1380556800 |

+--------------------------+

1 row in set (0.00 sec)


mysql> select  unix_timestamp('2013-10-01 00:00:00');

+---------------------------------------+

| unix_timestamp('2013-10-01 00:00:00') |

+---------------------------------------+

|                            1380556800 |

+---------------------------------------+

1 row in set (0.00 sec)



2.时间戳转普通时间

from_unixtime()是MySQL里的时间函数

mysql> select from_unixtime(1380556800);

+---------------------------+

| from_unixtime(1380556800) |

+---------------------------+

| 2013-10-01 00:00:00       |

+---------------------------+

1 row in set (0.00 sec)


unix/linux 时间戳与普通时间转换命令


  在LINUX系统中,有许多场合都使用时间戳的方式表示时间,即从1970年1月1日起至当前的天数或秒数。如/etc/shadow里的密码更改日期和失效日期,还有代理服务器的访问日志对访问时间的记录等等。


下面介绍几种时间戳格式和标准时间格式转换的方法:

1、分别以标准格式和时间戳来显示当前时间:

# date  //查看当前系统的标准格式的时间的

2013年 11月 23日 星期六 15:31:39 CST


# date +%s    //是当前时间距离1970年的秒数。时间戳格式

1385190897


2、显示指定时间的时间戳

# date -d "20131001 08:00:00" +%s

1380585600


# date -d "20131001 00:00:00" +%s

1380556800


#date +%s -d "20131001 08:00:00" //表示“2013-10-01 08:00:00”这个时间距离1970的秒数

1380585600


3、将时间戳转换为标准时间格式

# date -d '@1380585600'

2013年 10月 01日 星期二 08:00:00 CST


# date -d '@1380556800'

2013年 10月 01日 星期二 00:00:00 CST


# date -d '1970-01-01 utc 1380556800 seconds'

2013年 10月 01日 星期二 00:00:00 CST



补充:

关于时间格式的解释:

UTC  (Universal Time Coordinated,UTC)世界协调时间

CST  (China Standard Time UTC+8:00)中国沿海时间(北京时间)

GMT  (Greenwich Mean Time)格林威治标准时间: