SQL:更新表

时间:2011-06-29 10:55:04

标签: mysql sql

我有3个表:事件,任务,task_handler。

EVENT:
event_id|name

TASK_HANDLER:
event_id|task_seq|handler

TASK:
event_id|task_seq|script

我想要的是“脚本”与“名称”具有相同的内容。 task_handler.handler是event.event_id。

所以我要做的是获取每个event_id / task_seq组合的event.name并将其放入task.script。

结果应该是这样的: http://imageshack.us/photo/my-images/825/stackover.jpg/

2 个答案:

答案 0 :(得分:0)

使用此查询。

SELECT
  e.event_id,t.task_seq,a.name as 'script'
FROM
  EVENT e, TASK_HANDLER t
WHERE
  e.event_id = t.event_id

答案 1 :(得分:0)

我不确定我是否理解你的关系(我对处理程序是event_id感到困惑)但是试试这个:

UPDATE `TASK` t
INNER JOIN `TASK_HANDLER` th ON th.event_id = t.event_id AND th.task_seq = t.task_seq
INNER JOIN `EVENT` e ON e.event_id = th.handler
SET t.script = e.name