"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment mettre à jour une colonne dans une table à l'aide des valeurs d'une table associée ?

Comment mettre à jour une colonne dans une table à l'aide des valeurs d'une table associée ?

Publié le 2025-01-10
Parcourir:270

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

Mettre à jour les colonnes avec les valeurs des tables associées

Cet article explique comment mettre à jour une colonne dans une table (QuestionTrackings) dont les valeurs proviennent d'une table associée (QuestionAnswers) en fonction d'une condition spécifique (QuestionID est NULL). Nous pouvons y parvenir en utilisant l'instruction UPDATE combinée avec INNER JOIN.

Requête SQL :

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

illustrer:

  • Utilisez INNER JOIN pour établir une jointure entre deux tables basée sur la colonne commune AnswerID.
  • Condition q.QuestionID IS NULL Garantit que les mises à jour affectent uniquement les lignes de la table QuestionTrackings où QuestionID est NULL.
  • La clause
  • SET met à jour la colonne QuestionID de la table QuestionTrackings (q.QuestionID) avec le QuestionID correspondant de la table QuestionAnswers (a.QuestionID).

Note:

Avant d'exécuter une requête UPDATE, il est recommandé de prévisualiser les données concernées. Pour ce faire, vous pouvez modifier la requête pour inclure les éléments suivants :

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

Cela affichera les lignes qui seront mises à jour et confirmera que chaque AnswerID n'a qu'un seul QuestionID associé pour éviter les incohérences des données.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3