我目前拥有的是:设置一列一列从另一个表复制(条件)
UPDATE card, records
IF(records.date_returned == null) THEN SET
card.last_seen = records.date_loaned
ELSE SET card.last_seen = records.date_returned
WHERE card.card_no = records.card_no
小background--表中的记录有两个columns-- date_loaned和date_returned,与date_returned集默认情况下为null。我想知道是否有可能将temp_card中的last_seen列更改为date_returned,当它得到更新时
很确定它不可能,但我想我正在尝试我的运气!
CNC中*我有点希望它是自动的(例如,当记录得到更新,这将触发last_seen改变)希望清除的东西了!*
CNC中谢谢大家谁回答!这是我得到的解决方案:
AFTER UPDATE ON records
FOR EACH ROW
Update card A
INNER JOIN records B
SET A.last_seen =
(CASE WHEN B.date_returned=null then B.date_loaned Else B.date_returned END)
WHERE A.card_no = B.card_no
使用'trigger',上更新事件 –
你可能会详细阐述一下吗?我并不十分确定如何使用触发器 – ohhreeohh
您希望在某列更新后立即更新列,即您希望在主列的更新时触发一个事件..http:// dev.mysql.com/doc/refman/5.0/en/create-trigger.html –