mysql怎么获取时间戳的函数UNIX_TIMESTAMP?我们收集了网络上流行的各种关于获取UNIX_TIMESTAMP的方法总结。
创新互联主要为客户提供服务项目涵盖了网页视觉设计、VI标志设计、全网营销推广、网站程序开发、HTML5响应式重庆网站建设、手机网站制作设计、微商城、网站托管及网页维护、WEB系统开发、域名注册、国内外服务器租用、视频、平面设计、SEO优化排名。设计、前端、后端三个建站步骤的完善服务体系。一人跟踪测试的建站服务标准。已经为成都PE包装袋行业客户提供了网站维护服务。
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 时间戳
mysql 把时间换成时间戳进行储存在int栏位中还是直接用datetime好 我们用的都是 int ,毕竟 时间戳 可以用FROM_UNIXTIME()等时间函式转换成时间格式,个人感觉 int 比 datetime 计算 和 比较 简单一点,还有是就是 感觉 资料量大的话 int 应该比 datetime 更快 一点,我们公司 资料库大牛 ,建的所有的资料表关于 时间的都是 int
php mysql的时间戳用timestamp还是datetime栏位储存?
datetime是跟时区无关的,而timestamp是与时区有关的,所以php mysql的时间戳用应该是timestamp。
PHP 语法:
1、PHP 指令码可放置于文件中的任何位置,PHP 指令码以 ?php 开头,以 ? 结尾:?php 此处是 PHP 程式码?PHP 档案的预设副档名是 ".php",PHP 档案通常包含 HTML 标签以及一些 PHP 指令码程式码;
2、PHP 程式码中的注释不会被作为程式来读取和执行。它唯一的作用是供程式码编辑者阅读。注释用于:使其他人理解您正在做的工作 - 注释可以让其他程式设计师了解您在每个步骤进行的工作。提醒自己做过什么 - 大多数程式设计师都曾经历过一两年后对专案进行返工,然后不得不重新考虑他们做过的事情。注释可以记录您在写程式码时的思路。
phy mysql 如何将datetime转换成时间戳
?echo("当前时间为:".date("Y-m-d h:i:s")."br");$n=strtotime(date("Y-m-d h:i:s"));用PHP时间戳转化为数字 echo("用PHP时间戳转化为数字:".$n)."br";$n=date("Y-m-d h:i:s",$n);显示的时候再转化为时间:echo("显示的时候再转化为时间:".$n)."br";?
13位的时间戳可以直接用fastjson转换成时间格式吗
可以直接转换成Date物件,然后再用SimpleDateFormat格式化。
new SimpleDateFormat("日期格式").parseDate();
php 时间戳转换成时间
time();
是获得当前时间,但获得的是一整型
可以对此进行格式化
date("Y-m-d H:i:s", time()) ;
这样连时,分秒一起显示
date("Y-m-d ", time()); 只年示年月日
详细可以去看:hi.baidu./nb/blog/item/335376d97271342410df9b49.
SQL语句也有时间函式,可以去看这里
:user.qzone.qq./120868600/blog/1238421401
在mysql中,怎样把表“table1”里的栏位“addtime“从int型别的时间戳转换成datetime的日期格式?
使用mysql自带函式 FROM_UNIXTIME(时间戳,format) ,根据format字串格式化
例如
SELECT FROM_UNIXTIME(1234567890, '%Y-%m-%d %H:%i:%S');
对于你的表操作,转化成 年-月-日 小时-分-秒格式
update table1 set addtime = FROM_UNIXTIME(addtime, '%Y-%m-%d %H:%i:%S')
转化成 年-月-日格式
update table1 set addtime = FROM_UNIXTIME(addtime, '%Y-%m-%d');
下面是其他格式
%W 星期名字(Sunday……Saturday)
%D 有英语字首的月份的日期(1st, 2nd, 3rd, 等等。)
%Y 年, 数字, 4 位
%y 年, 数字, 2 位
%a 缩写的星期名字(Sun……Sat)
%d 月份中的天数, 数字(00……31)
%e 月份中的天数, 数字(0……31)
%m 月, 数字(01……12)
%c 月, 数字(1……12)
%b 缩写的月份名字(Jan……Dec)
%j 一年中的天数(001……366)
%H 小时(00……23)
%k 小时(0……23)
%h 小时(01……12)
%I 小时(01……12)
%l 小时(1……12)
%i 分钟, 数字(00……59)
%r 时间,12 小时(hh:mm:ss [AP]M)
%T 时间,24 小时(hh:mm:ss)
%S 秒(00……59)
%s 秒(00……59)
%p AM或PM
%w 一个星期中的天数(0=Sunday ……6=Saturday )
%U 星期(0……52), 这里星期天是星期的第一天
%u 星期(0……52), 这里星期一是星期的第一天
%% 一个文字“%”。
如何把10位时间戳转换成时间
要看你的 “时间戳” 是怎样定义的。
EXCELL 里 是 03/12/2014 这种格式, 你可以 用 sscanf() 读出。
int d,m,y;
char s[]="03/12/2014";
sscanf(s,"%2d/%2d/%4d",d,m,y);
printf("%d %d %d\n",d,m,y);
----
c 语言 timestampe 可以用 time.h 里的函式获取和处理
例如 已知 时间戳 数值: 1483040530
#includestdio.h
#includetime.h
int main(){
time_t rt;
struct tm * timeinfo;
char timE [80];
rt = 1483040530; 若已知数值
timeinfo = localtime ( rt ); 转当地时间,tm 结构
strftime ( timE,80,"%Y-%m-%d %I:%M:%S",timeinfo); 用自己喜欢的格式输出
printf ("%s", timE);
return 0;
}
输出: 2016-12-29 02:42:10
js里怎样把时间转换成时间戳
document.write(unixtime());
function unixtime(){
var dt = new Date();
var ux = Date.UTC(dt.getFullYear(),dt.getMonth(),dt.getDay(),dt.getHours(),dt.getMinutes(),dt.getSeconds())/1000;
return ux;
}
php 汉字时间转换成时间戳
php是老外开发的;你觉得老外会提供汉字处理的函式给你吗;我在撷取utf8的字串的时候比这个麻烦得多;
自己定义一个函式;貌似你这种方法最简便;还可以通过正则把里面的数字都提出来;
?php
$str='2014年09月22日 20:03';
preg_match_all('/\d/',$str,$arr);
$timer=implode('',$arr[0]);
$timer=strtotime($timer);
var_dump(date('Y-m-d H:i:s'));
?
如何建立mysql时间戳栏位
如何建立mysql时间戳栏位
如果是日期字串型别就是~
CREATE TABLE 表名
(
time datetime NOT NULL DEFAULT NOW(),
...
)
如果是时间戳~
CREATE TABLE 表名
(
time int NOT NULL DEFAULT CURRENT_TIMESTAMP(),
...
以下代码希望对你有帮助!
?
echo("当前时间为:".date("Y-m-d
h:i:s")."br");
$n=strtotime(date("Y-m-d
h:i:s"));//用PHP时间戳转化为数字
echo("用PHP时间戳转化为数字:".$n)."br";
$n=date("Y-m-d
h:i:s",$n);//显示的时候再转化为时间:
echo("显示的时候再转化为时间:".$n)."br";
?
如果是日期字符串类型就是~
CREATE TABLE 表名
(
time datetime NOT NULL DEFAULT NOW(),
...
)
如果是时间戳~
CREATE TABLE 表名
(
time int NOT NULL DEFAULT CURRENT_TIMESTAMP(),
...
)
-----希望对你有帮助~
如果是插入的时候的话~在对应值上填写NOW()/CURRENT_TIMESTAMP() 也是可以的
1、将时间转换为时间戳
[sql] view plaincopyprint?
select unix_timestamp('2009-10-26 10-06-07')
如果参数为空,则处理为当前时间
2、将时间戳转换为时间
[sql] view plaincopyprint?
select from_unixtime(1256540102)
有些应用生成的时间戳是比这个多出三位,是毫秒表示,如果要转换,需要先将最后三位去掉,否则返回NULL
UNIX_TIMESTAMP(date)
如果没有参数调用,返回一个Unix时间戳记(从'1970-01-01 00:00:00'GMT开始的秒数)。如果UNIX_TIMESTAMP()用一个date参数被调用,它返回从'1970-01-01 00:00:00' GMT开始的秒数值。date可以是一个DATE字符串、一个DATETIME字符串、一个TIMESTAMP或以YYMMDD或YYYYMMDD格式的 本地时间的一个数字。
[sql] view plaincopyprint?
mysql select UNIX_TIMESTAMP();
- 882226357
mysql select UNIX_TIMESTAMP('1997-10-04 22:23:00');
- 875996580
当UNIX_TIMESTAMP被用于一个TIMESTAMP列,函数将直接接受值,没有隐含的“string-to-unix-timestamp”变换。
FROM_UNIXTIME(unix_timestamp)
以'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS格式返回unix_timestamp参数所表示的值,取决于函数是在一个字符串还是或数字上下文中被使用。
[sql] view plaincopyprint?
mysql select FROM_UNIXTIME(875996580);
- '1997-10-04 22:23:00'
mysql select FROM_UNIXTIME(875996580) + 0;
- 19971004222300
FROM_UNIXTIME(unix_timestamp,format)
返回表示 Unix 时间标记的一个字符串,根据format字符串格式化。format可以包含与DATE_FORMAT()函数列出的条目同样的修饰符。
[sql] view plaincopyprint?
mysql select FROM_UNIXTIME(UNIX_TIMESTAMP(),
'%Y %D %M %h:%i:%s %x');
- '1997 23rd December 03:43:30 x'
通过 UNIX_TIMESTAMP 函数把 MySQL 数据库中的 date 类型数据转换成 unix timestamp 形式的一个整形数字:
[sql] view plaincopyprint?
select UNIX_TIMESTAMP('2006-02-28') testdate;
[sql] view plaincopyprint?
按理说得到的时间戳应该可以直接拿来给 PHP 的 date() 等函数使用。但奇怪的是:
echo date("Y-m-d",$testdate);
显示出来的日期跟数据库实际的日期相比却少了一天,百思不得其解。反复查看 MySQL 关于 UNIX_TIMESTAMP 函数的说明,终于发现问题所在:“The server interprets date as a value in the current time zone and converts it to an internal value in UTC.” 原来 MySQL 的 UNIX_TIMESTAMP 函数得到的时间戳是 UTC 时间,而不是服务器设定的特定 Time zone 的时间。经过这样一转化,时间戳就凭空少了8个小时(对于咱这里来说),而 PHP 中的 timestamp 则计算的都是系统设定时区的当地时间。因此 2006-02-28 这个日期被减去了8个小时,自然变成了2006-02-27。
[sql] view plaincopyprint?
解决方法:把这八个小时加回去(UNIX_TIMESTAMP('2006-02-28' + INTERVAL 8 HOUR));或者弃用 UNIX_TIMESTAMP 函数, 直接得到 MySQL date 字符串之后通过 strtotime() 函数来把字符串转化成真正的本地时间戳。
找出下个月生日的动物也是容易的。假定当前月是4月,那么月值是4,你可以找在5月出生的动物 (5月),方法是:
[sql] view plaincopyprint?
mysql SELECT name, birth FROM pet WHERE MONTH(birth) = 5;
.................
$conn=mysql_connect("localhost","root","1234")or die("连接数据库失败");
$conndb=mysql_select_db("test",$conn)or die("连接表失败");
$query="select * from ttable";
$result = mysql_query($query,$conn);
while($row = mysql_fetch_array($result)){
$rows[]=$row;
}
$random =rand(0,count($rows));
print_r($rows[$random]);