«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как обновить столбец в одной таблице, используя значения из связанной таблицы?

Как обновить столбец в одной таблице, используя значения из связанной таблицы?

Опубликовано 10 января 2025 г.
Просматривать:404

How to Update a Column in One Table Using Values from a Related Table?

Обновить столбцы значениями из связанных таблиц

В этой статье рассматривается, как обновить столбец в таблице (QuestionTrackings), значения которого взяты из связанной таблицы (QuestionAnswers), на основе определенного условия (QuestionID имеет значение NULL). Мы можем добиться этого, используя оператор UPDATE в сочетании с INNER JOIN.

SQL-запрос:

UPDATE QuestionTrackings q
INNER JOIN QuestionAnswers a
ON q.AnswerID = a.AnswerID
SET q.QuestionID = a.QuestionID
WHERE q.QuestionID IS NULL
-- 可在此处添加其他条件

иллюстрация:

  • Используйте INNER JOIN, чтобы установить соединение между двумя таблицами на основе общего столбца AnswerID.
  • Условие q.QuestionID IS NULL Гарантирует, что обновления затрагивают только те строки в таблицеQuestionTrackings, гдеQuestionID имеет значение NULL.
  • Предложение
  • SET обновляет столбец «QuestionID» в таблице «QuestionID» (q.QuestionID) соответствующим идентификатором вопроса из таблицы «QuestionID» (a.QuestionID).

Примечание:

Перед выполнением запроса UPDATE рекомендуется просмотреть затронутые данные. Для этого вы можете изменить запрос, включив в него следующее:

SELECT *
FROM QuestionTrackings q
INNER JOIN QuestionAnswers a
ON q.AnswerID = a.AnswerID
WHERE q.QuestionID IS NULL
-- 可在此处添加其他条件

Отобразятся строки, которые будут обновлены, и будет подтверждено, что с каждым идентификатором ответа есть только один связанный идентификатор вопроса, чтобы предотвратить несогласованность данных.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3