噜噜哒
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 时间戳