집 >데이터 베이스 >MySQL 튜토리얼 >관련 테이블의 데이터를 사용하여 한 테이블의 NULL 열을 업데이트하는 방법은 무엇입니까?
데이터베이스 열 업데이트: 관련 테이블 전체에서 값 일치
데이터베이스 관리에서는 관련 테이블의 데이터를 기반으로 한 테이블의 열을 업데이트해야 하는 경우가 많습니다. 이는 데이터 무결성 및 버그 수정에 매우 중요합니다.
시나리오:
두 개의 테이블 QuestionTrackings
과 QuestionAnswers
을 상상해 보세요.
QuestionTrackings
:QuestionID
(NULL일 수 있음)AnswerID
QuestionAnswers
:AnswerID
QuestionID
버그로 인해 일부 QuestionTrackings
행에 NULL QuestionID
값이 발생했습니다. 다행스럽게도 해당 AnswerID
값은 QuestionID
테이블에 올바른 QuestionAnswers
이 있습니다. 작업은 QuestionID
에서 누락된 QuestionTrackings
값을 채우는 것입니다.
해결책:
이 작업은 UPDATE
:INNER JOIN
과 결합된
<code class="language-sql">UPDATE QuestionTrackings AS q INNER JOIN QuestionAnswers AS a ON q.AnswerID = a.AnswerID SET q.QuestionID = a.QuestionID WHERE q.QuestionID IS NULL;</code>
INNER JOIN
은 AnswerID
값이 일치하는 행을 연결합니다.SET q.QuestionID = a.QuestionID
은 QuestionTrackings
의 올바른 QuestionID
으로 QuestionAnswers
을 업데이트합니다.WHERE q.QuestionID IS NULL
은 QuestionID
값이 누락된 행으로 업데이트를 제한합니다.중요 사항:
UPDATE
문을 실행하기 전에 동일한 SELECT
과 함께 JOIN
문을 사용하여 결과를 미리 보고 데이터 정확성을 확인하는 것이 가장 좋습니다. 각 AnswerID
이 단일 QuestionID
에 매핑되는지 확인하세요.WHERE
절 조건을 추가할 수 있습니다(예: WHERE q.QuestionID IS NULL AND q.Status = 'Active'
).위 내용은 관련 테이블의 데이터를 사용하여 한 테이블의 NULL 열을 업데이트하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!