mysql怎么获取时间戳的函数UNIX_TIMESTAMP?我们收集了网络上流行的各种关于获取UNIX_TIMESTAMP的方法总结。
CREATE TRIGGER cus_info_tbl_tr AFTER INSERT ON cus_info_tbl
FOR EACH ROW
INSERT INTO summary_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
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> Select FROM_UNIXTIME(875996580);
-> '1997-10-04 22:23:00'
mysql> Select FROM_UNIXTIME(875996580) + 0;
-> 19971004222300
mysql> Select FROM_UNIXTIME(UNIX_TIMESTAMP(),
-> '%Y %D %M %h:%i:%s %x');
-> '2003 6th August 06:22:58 2003'
php中:time()
time -- 返回当前的 Unix 时间戳
strtotime() 也可以转换Unix 时间戳
本文原创发布php中文网,转载请注明出处,感谢您的尊重!