接刚才的timestamp类型的加法运算的问题 谢谢ACHMAIN_CHM对我刚才问题http://topic.csdn.net/u/20090611/12/e5a58556-2995-4fd6-bbb4-076569516dad.html的解答,日期是加了,但是加之前的日期是10位的int型字段,加完后怎么能保持仍然是10位int型的呢如 1241136000 加完30天后是 1342236000 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select FROM_UNIXTIME(1241136000) as a1, DATE_ADD(FROM_UNIXTIME(1241136000),INTERVAL 30 day) as a2,UNIX_TIMESTAMP(DATE_ADD(FROM_UNIXTIME(1241136000),INTERVAL 30 day)) a3应该是 1243728000? mysql> select FROM_UNIXTIME(1127883316) as f1, -> DATE_ADD(FROM_UNIXTIME(1127883316),INTERVAL 2 day) as f2, -> UNIX_TIMESTAMP(DATE_ADD(FROM_UNIXTIME(1127883316),INTERVAL 2 day)) as f3;+---------------------+---------------------+------------+| f1 | f2 | f3 |+---------------------+---------------------+------------+| 2005-09-28 12:55:16 | 2005-09-30 12:55:16 | 1128056116 |+---------------------+---------------------+------------+1 row in set (0.00 sec)mysql> 但你如果是加 30 天你还不如直接select 1127883316 + 30*24*60*60;mysql> select FROM_UNIXTIME(1127883316) as f1, -> DATE_ADD(FROM_UNIXTIME(1127883316),INTERVAL 30 day) as f2, -> UNIX_TIMESTAMP(DATE_ADD(FROM_UNIXTIME(1127883316),INTERVAL 30 day)) as f3;+---------------------+---------------------+------------+| f1 | f2 | f3 |+---------------------+---------------------+------------+| 2005-09-28 12:55:16 | 2005-10-28 12:55:16 | 1130475316 |+---------------------+---------------------+------------+1 row in set (0.00 sec)mysql> select 1127883316 + 30*24*60*60;+--------------------------+| 1127883316 + 30*24*60*60 |+--------------------------+| 1130475316 |+--------------------------+1 row in set (0.00 sec)mysql> 求一条sql查询语句 这个表应该水平或者垂直分开? MySQL不支持check怎么办? 这个数据查询语句该怎么写 被Mysql phpmyadmin搞怕了 帮忙看看这个怎么恢复 在mysql中如何比较2个16进制数字? 表里面要同时存放简体中文,繁体中文,英文的情况下应该用什么编码比较好? Mysql获取表中最后一行记录的语句怎么写? 数据库查询的group by 的不明白的地方 mysql数据库FEDERATED引擎问题 select in 转 select exists 着急着急着急!!在线等
DATE_ADD(FROM_UNIXTIME(1241136000),INTERVAL 30 day) as a2,
UNIX_TIMESTAMP(DATE_ADD(FROM_UNIXTIME(1241136000),INTERVAL 30 day)) a3应该是 1243728000?
-> DATE_ADD(FROM_UNIXTIME(1127883316),INTERVAL 2 day) as f2,
-> UNIX_TIMESTAMP(DATE_ADD(FROM_UNIXTIME(1127883316),INTERVAL 2 day)) as f3;
+---------------------+---------------------+------------+
| f1 | f2 | f3 |
+---------------------+---------------------+------------+
| 2005-09-28 12:55:16 | 2005-09-30 12:55:16 | 1128056116 |
+---------------------+---------------------+------------+
1 row in set (0.00 sec)mysql>
select 1127883316 + 30*24*60*60;mysql> select FROM_UNIXTIME(1127883316) as f1,
-> DATE_ADD(FROM_UNIXTIME(1127883316),INTERVAL 30 day) as f2,
-> UNIX_TIMESTAMP(DATE_ADD(FROM_UNIXTIME(1127883316),INTERVAL 30 day)) as f3;
+---------------------+---------------------+------------+
| f1 | f2 | f3 |
+---------------------+---------------------+------------+
| 2005-09-28 12:55:16 | 2005-10-28 12:55:16 | 1130475316 |
+---------------------+---------------------+------------+
1 row in set (0.00 sec)mysql> select 1127883316 + 30*24*60*60;
+--------------------------+
| 1127883316 + 30*24*60*60 |
+--------------------------+
| 1130475316 |
+--------------------------+
1 row in set (0.00 sec)mysql>