Php 在mysql datatabase中创建记录的日期
我有一个表,其中有生日、年龄位置和分数,我想检索两个日期之间创建的记录数,其中分数不为null,并且没有时间戳字段 如果没有时间戳字段,我怎么做Php 在mysql datatabase中创建记录的日期,php,mysql,Php,Mysql,我有一个表,其中有生日、年龄位置和分数,我想检索两个日期之间创建的记录数,其中分数不为null,并且没有时间戳字段 如果没有时间戳字段,我怎么做 是否有元数据?如果有,如何运行查询?向表中添加时间戳尝试以下查询: SELECT COUNT(*) FROM TABLE_NAME WHERE BIRTHDATE BETWEEN 'DATE1' AND 'DATE2' AND SCORE IS NOT NULL AND TIMESTAMP IS NULL; 将列timestamp添加到现有表中
是否有元数据?如果有,如何运行查询?向表中添加时间戳尝试以下查询:
SELECT COUNT(*)
FROM TABLE_NAME
WHERE BIRTHDATE BETWEEN 'DATE1' AND 'DATE2'
AND SCORE IS NOT NULL AND TIMESTAMP IS NULL;
将列timestamp
添加到现有表中,默认值为NULL
,并查询上述语句,它应该可以工作。
每当向已有记录的表中添加列时,对于现有记录,新列的相应值为空 正如其他用户所注意到的,这里也有回响 因为数据库中没有日期引用字段,所以无法提取与一个日期匹配或介于两个日期之间的记录 从现在开始,您最好添加一个日期字段,然后确保在将数据写入数据库时,使用插入日期/日期时间。有几种不同的方法可以实现,但这可能是最简单的:
mysql_query("
INSERT INTO users (first, last, whenadded)
VALUES ('$first', '$last', now())
";
不,不行。您需要存储输入的日期。虽然这是一个很好的建议,但对表中已有的数据没有帮助。@Muhammet是的,这是一个很好的建议,我应该为将来的解决方案添加时间戳,但正如@andrew所说的,表中已有的数据怎么办table@Muhammet如果我想将时间戳添加到现有表中,该怎么办?我应该怎样做才能让它只添加一个列的日期,并且我可以看到记录是什么时候创建的?:我怎样才能使用query添加一个时间戳列,这样它就能自动存储记录创建的日期?我的意思是,如果有任何查询要用新列更新表属性?您可以使用
altertable
来添加列,也可以使用INSERT
和timestamp
作为NOW()
来更新表。因此,例如,插入表_NAME VALUES('20120420',25,'newyork,NOW())代码>它使用POST ajax调用更新数据库,因此我不能使用insert命令。虽然我可以更改表并将时间戳添加为一列,如下所示-->更改表名添加列名时间戳;但是它会自动更新该行中为该时间戳字段创建记录的日期吗?不会,它不会自动更新,您必须更新用于插入/创建记录的查询。为什么不能通过ajax post使用INSERT?