У меня есть база данных Access, в которой есть две таблицы, связанные PK/FK. К сожалению, таблицы базы данных допускают дублирование/избыточность записей и делают базу данных немного запутанной. Я пытаюсь выяснить оператор SQL, который решит проблему.
Чтобы лучше объяснить проблему и цель, я создал примеры таблиц для использования в качестве справки: http://img38.imageshack.us/img38/9243/514201074110am.png Вы заметите две таблицы: таблицу Student и таблицу TestScore, где StudentID — это PK/FK.
Таблица Student содержит повторяющиеся записи для студентов John, Sally, Tommy и Suzy. Другими словами, Джон со StudentID 1 и 5 — это одно и то же лицо, Салли 2 и 6 — одно и то же лицо и так далее.
Таблица TestScore соотносит результаты тестов с учащимся.
Игнорирование того, как и почему в таблице Student разрешены дубликаты и т. д. Цель, которую я пытаюсь достичь, - обновить таблицу TestScore, чтобы она заменила отключенные идентификаторы StudentID соответствующим включенным StudentID. Итак, все StudentID = 1 (Джон) будут обновлены до 5; все StudentID = 2 (Салли) будут обновлены до 6 и так далее. Вот результирующая таблица TestScore, в которую я стреляю (обратите внимание, что больше нет ссылок на отключенный StudentID 1-4): http://img163.imageshack.us/img163/1954/514201091121am.png Можете ли вы придумать запрос (совместимый с JET Engine MS Access), который может достичь этой цели? ? Или, может быть, вы можете предложить несколько советов/перспектив, которые укажут мне правильное направление.
Спасибо.