mysql怎么获取时间戳的函数UNIX_TIMESTAMP?我们收集了网络上流行的各种关于获取UNIX_TIMESTAMP的方法总结.
- CREATETRIGGERcus_info_tbl_trAFTERINSERTONcus_info_tbl
- FOREACHROW
- INSERTINTOsummary_tbl(`school_id`,`province_id`,`city_id`,`year`,`month`,`day`,`hour`,`minute`,`first_time`,`intdate`)VALUES
- (NEW.school_id,
- NEW.province_id,
- NEW.city_id,
- YEAR(NEW.date_call),
- MONTH(NEW.date_call),
- DAYOFMONTH(NEW.date_call),
- HOUR(NEW.date_call),
- MINUTE(NEW.date_call),
- NEW.first_time,
- UNIX_TIMESTAMP(NEW.date_call)+28800
- );
看到了吧,在这个时间戳后面再加上8个小时的秒数就搞定了,呵呵.
不过我在google的时候注意到有很多兄弟都反应UNIX_TIMESTAMP和php中的mktime得到的值是一样的,但是我这里却出现了问题,到现在也没有能够找到原因,代码如下:
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中UNIX_TIMESTAMP()函数的应用比较
应用,代码如下:
- SELECT(
- UNIX_TIMESTAMP(endtime)-UNIX_TIMESTAMP(startime)
- )/31536000year,id,name--phpfensi.com
- FROMtestime
- LIMIT0,30
这里我们可以使用:
FROM_UNIXTIME(unix_timestamp), FROM_UNIXTIME(unix_timestamp,format) 来格式化一个UNIX_TIMESTAMP()时间戳,它将返回'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS 格式值的 unix_timestamp参数表示,具体格式取决于该函数是否用在字符串中或是数字语境中。
若format 已经给出,则结果的格式是根据format 字符串而定,format 可以包含同DATE_FORMAT() 函数输入项列表中相同的说明符,代码如下:
- mysql>SelectFROM_UNIXTIME(875996580);
- ->'1997-10-0422:23:00'
- mysql>SelectFROM_UNIXTIME(875996580)+0;
- ->19971004222300
- --phpfensi.com
- mysql>SelectFROM_UNIXTIME(UNIX_TIMESTAMP(),
- ->'%Y%D%M%h:%i:%s%x');
- ->'20036thAugust06:22:582003'
php中:time()
time -- 返回当前的 Unix 时间戳
strtotime() 也可以转换Unix 时间戳