SQL: обновление таблицы - PullRequest
0 голосов
/ 29 июня 2011

у меня есть 3 таблицы: Event, task, task_handler.

EVENT:
event_id|name

TASK_HANDLER:
event_id|task_seq|handler

TASK:
event_id|task_seq|script

я хочу, чтобы «script» содержал то же самое, что и «name».task_handler.handler - это event.event_id.

Итак, мне нужно получить event.name для каждой комбинации event_id / task_seq и поместить его в task.script.

Результат должен выглядеть следующим образом: http://imageshack.us/photo/my-images/825/stackover.jpg/

Ответы [ 2 ]

0 голосов
/ 29 июня 2011

Я не уверен, что понял ваши отношения (меня смущает то, что обработчик является 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
0 голосов
/ 29 июня 2011

Используйте этот запрос.

SELECT
  e.event_id,t.task_seq,a.name as 'script'
FROM
  EVENT e, TASK_HANDLER t
WHERE
  e.event_id = t.event_id
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...