mysql时间戳问题中的CURRENT_TIMESTAMP


CURRENT_TIMESTAMP in timestamp issue in mysql

在mysql查询如何找到哪些记录在24小时内更改/更新

我有mysql表的时间戳与CURRENT_TIMESTAMP作为默认值。我使用PHP Mysql。当用户编辑记录时,我有一个字段activitytime与默认CURRENT_TIMESTAMP,我想得到所有这些记录被更改

 SELECT * FROM news WHERE activitytime  < 24 hours

i tried but no luck

 select * from news where activitytime  >= now() - INTERVAL 1 DAY order by activitytime desc

为什么我的activitytime字段不更新,我正在更新它?我应该再次节省活动时间吗?

 CREATE TABLE IF NOT EXISTS `crmtbl` (
 `id` bigint(20) NOT NULL AUTO_INCREMENT,
 `ref` varchar(33) NOT NULL,
`activitytime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
 ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=316 ;

查询mysq_query("INSERT INTO crmtbl(ref) Values('myref')");

表示我没有在INSERT OR UPDATE中使用activitytime

try this

SELECT * FROM news WHERE date >= now() - INTERVAL 1 DAY;

SELECT * 
FROM table_name
WHERE table_name.the_date > DATE_SUB(CURDATE(), INTERVAL 1 DAY)

你必须使activitytime字段更新当前时间戳

更改为

CREATE TABLE IF NOT EXISTS `crmtbl` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `ref` varchar(33) NOT NULL,
  `activitytime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=316 ;