查询将UNIX_TIMESTAMP作为INT提供给另一列

时间:2016-05-05 17:58:36

标签: mysql sql

CREATE TABLE IF NOT EXISTS `sample_table` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `thread` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
  `subject` varchar(200) COLLATE utf8_unicode_ci NOT NULL,
  `content` mediumtext COLLATE utf8_unicode_ci NOT NULL,
  `date_entered` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `time_stamp` int(11) unsigned NOT NULL DEFAULT '1',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=283 ;

我有一个名为sample_table的表,在该表中,我有一个列,其中新记录作为日期时间格式保存到date_entered列。我想运行一个查询来将unix时间戳添加到我刚刚创建的名为'time_stamp'的额外列中。我尝试但最终将所有时间记录设置为1 date_entered和1 time_stamp。

UPDATE sample_table SET time_stamp = UNIX_TIMESTAMP(date_entered);

我想在date_entered列旁边的time_stamp列上显示每个date_entered的unix时间戳。 我该怎么办?

1 个答案:

答案 0 :(得分:1)

没关系,我想我回答了自己的问题。这是解决方案。

UPDATE sample_table SET date_entered = date_entered, time_stamp = UNIX_TIMESTAMP(date_entered)