如何在mysql中添加2列?

时间:2013-09-15 04:54:13

标签: mysql database

我有一个名为“出勤”的表格,其中有几列。

我想添加2列并将结果放在同一个表的第三列中。

如何在Mysql中执行此操作?

我希望每次有新条目时都会发生这种情况。

1 个答案:

答案 0 :(得分:1)

更新:如果您无法控制INSERT语句,并希望保留计算的列值,则可以使用BEFORE INSERT触发器

CREATE TRIGGER tg_bi_attendance
BEFORE INSERT ON attendance
FOR EACH ROW
  SET NEW.column3 = NEW.column1 + NEW.column2;

注意:当column1和/或column2中的值正在更新时,您可能需要介绍一个案例。为此使用单独的BEFORE UPDATE触发器。

CREATE TRIGGER tg_bu_attendance
BEFORE UPDATE ON attendance
FOR EACH ROW
  SET NEW.column3 = NEW.column1 + NEW.column2;

这是 SQLFiddle 演示


否则只需在SELECT子句

中即时计算
SELECT column1, column2, column1 + column2 column3
  FROM attendance

或创建视图

CREATE VIEW vw_attendance AS
SELECT column1, column2, column1 + column2 column3
  FROM attendance

<小时/> 要更新表中已有的行,请使用UPDATE

UPDATE attendance
   SET column3 = column1 + column2