【问题标题】:Extracting year and month from one column and insert it into another从一列中提取年份和月份并将其插入另一列
【发布时间】:2014-06-15 23:56:25
【问题描述】:

我有这个 MySQL 表:

Act (
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  type VARCHAR(20),
  act_date datetime,
  year INT,
  month INT,
  place VARCHAR(20)
  );

我用随机值填充此表的列,接受列“年”和“月”。我想用'act_date'列中的年份填充我的'year'列,并对'month'列执行相同的操作(用'act_date'列中的月份数字填充它)。我将不胜感激。

【问题讨论】:

标签: mysql database sql-insert


【解决方案1】:

听起来是个糟糕的主意,但你可以这样做:

UPDATE Act
   SET `year` = YEAR(`act_date`)
     , `month` = MONTH(`act_date`);

【讨论】:

  • 谢谢,那还有什么更好的呢?用年和月列做一个单独的表时间?我真的需要这两个值。
  • 不要在表中存储冗余数据。如果您想获取特定日期的月份或年份,您可以在 SELECT 查询中使用完全相同的函数。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多