mysql时间戳和php查询

时间:2011-11-22 02:47:10

标签: php mysql sql

我有一个MySQL数据库。所有字段,我分配,我有我的日期字段的日期戳。 它会像YYYY-MM-DD HH:MM:SS一样自动生成2011-11-21 21:31:37 但是,我希望它在两个不同的列中这样做:

包含YYYY-MM-DD2011-11-21

的日期字段

包含HH:MM:SS21:31:37

的时间字段

这是我的插入php代码

$sql= "INSERT INTO  `db`.`table` (`id` ,`fkid` ,`paid` ,`date`)
VALUES (NULL, '$userid', '0', CURRENT_TIMESTAMP);";

我已经尝试过CURRENT_DATESTAMP,但它不起作用。

问题的第二部分是:如何制作表格以便使用正确的代码?该字段的结构应该是类型文本还是日期?

1 个答案:

答案 0 :(得分:5)

我不建议将时间戳拆分为单独的日期和时间列。相反,最简单的方法是使用DATETIME列,并使用MySQL函数DATE()TIME()查询其日期和时间部分:

SELECT DATE(`date`) AS d, TIME(`date`) AS t FROM db.dable;

插入时,您可以使用NOW()功能设置当前时间戳。 `CURRENT_TIMESTAMP()NOW()的同义词。

$sql= "INSERT INTO  `db`.`table` (`id` ,`fkid` ,`paid` ,`date`)VALUES (NULL ,  '$userid',  '0', NOW());";