date为需要处理的参数(该参数是Unix 时间戳),可以是字段名,也可以直接是Unix 时间戳字符串
后面的 \'%Y%m%d\' 主要是将返回值格式化
例如:
mysql>SELECT FROM_UNIXTIME( 1249488000, \'%Y%m%d\' )
->20071120
mysql>SELECT FROM_UNIXTIME( 1249488000, \'%Y年%m月%d\' )
->2007年11月20
UNIX_TIMESTAMP()是与之相对正好相反的时间函数
UNIX_TIMESTAMP(), UNIX_TIMESTAMP(date)
若无参数调用,则返回一个 Unix timestamp (\'1970-01-01 00:00:00\' GMT 之后的秒数) 作为无符号整数。若用date 来调用 UNIX_TIMESTAMP(),它会将参数值以\'1970-01-01 00:00:00\' GMT后的秒数的形式返回。date 可以是一个 DATE 字符串、一个 DATETIME字符串、一个 TIMESTAMP或一个当地时间的YYMMDD 或YYYMMDD格式的数字。
例如:
mysql> SELECT UNIX_TIMESTAMP() ; (执行使得时间:2009-08-06 10:10:40)
->1249524739
mysql> SELECT UNIX_TIMESTAMP(\'2009-08-06\') ;
->1249488000
后面的 \'%Y%m%d\' 主要是将返回值格式化
例如:
mysql>SELECT FROM_UNIXTIME( 1249488000, \'%Y%m%d\' )
->20071120
mysql>SELECT FROM_UNIXTIME( 1249488000, \'%Y年%m月%d\' )
->2007年11月20
UNIX_TIMESTAMP()是与之相对正好相反的时间函数
UNIX_TIMESTAMP(), UNIX_TIMESTAMP(date)
若无参数调用,则返回一个 Unix timestamp (\'1970-01-01 00:00:00\' GMT 之后的秒数) 作为无符号整数。若用date 来调用 UNIX_TIMESTAMP(),它会将参数值以\'1970-01-01 00:00:00\' GMT后的秒数的形式返回。date 可以是一个 DATE 字符串、一个 DATETIME字符串、一个 TIMESTAMP或一个当地时间的YYMMDD 或YYYMMDD格式的数字。
例如:
mysql> SELECT UNIX_TIMESTAMP() ; (执行使得时间:2009-08-06 10:10:40)
->1249524739
mysql> SELECT UNIX_TIMESTAMP(\'2009-08-06\') ;
->1249488000
[root@Mysql140 ~]# mysql -e "SELECT UNIX_TIMESTAMP(\'`date -I -d \'a day ago\'`\') ; "
+------------------------------+
| UNIX_TIMESTAMP(\'2011-03-02\') |
+------------------------------+
| 1298995200 |
+------------------------------+
+------------------------------+
| UNIX_TIMESTAMP(\'2011-03-02\') |
+------------------------------+
| 1298995200 |
+------------------------------+