>데이터 베이스 >MySQL 튜토리얼 >관련 AnswerID를 사용하여 추적 테이블에서 NULL QuestionID를 업데이트하는 방법은 무엇입니까?

관련 AnswerID를 사용하여 추적 테이블에서 NULL QuestionID를 업데이트하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2025-01-10 06:08:44631검색

How to Update NULL QuestionIDs in a Tracking Table Using Related AnswerIDs?

연관된 답변 ID를 사용하여 NULL 질문 ID 업데이트

도전:

추적 테이블에는 "QuestionID" 열에 NULL 값이 있는 행이 포함되어 있습니다. 다행히 동일한 테이블의 관련 "AnswerID" 열에는 "Answers" 테이블 내에서 올바른 "QuestionID"를 찾는 열쇠가 있습니다. 목표는 이러한 NULL "QuestionID" 항목을 "답변" 테이블의 해당 값으로 채우는 것입니다.

해결책:

이 업데이트를 수행하기 위한 SQL 쿼리는 다음과 같습니다.

<code class="language-sql">UPDATE QuestionTrackings q
INNER JOIN QuestionAnswers a ON q.AnswerID = a.AnswerID
SET q.QuestionID = a.QuestionID
WHERE q.QuestionID IS NULL;</code>

설명:

이 쿼리는 INNER JOIN을 사용하여 QuestionTrackings(q 별칭) 및 QuestionAnswers(a 별칭) 테이블을 연결합니다. 조인 조건 q.AnswerID = a.AnswerID은 일치하는 행(AnswerID 기준)만 고려되도록 합니다. SET 절은 a.QuestionID이 NULL인 각 행에 대해 q.QuestionID 값을 q.QuestionID에 할당합니다.

중요 고려 사항:

  • 업데이트 미리보기: UPDATE 문을 실행하기 전에 SELECT 쿼리(동일한 JOINWHERE 절 사용)를 실행하여 영향을 받을 행을 미리 봅니다. 이를 통해 데이터를 변경하기 전에 업데이트의 정확성을 확인할 수 있습니다.

  • 데이터 무결성: AnswerID 테이블의 각 QuestionTrackingsQuestionID 테이블의 단일 QuestionAnswers에 고유하게 매핑되는지 확인합니다. AnswerID 값이 중복되면 예측할 수 없는 업데이트 결과가 발생할 수 있습니다.

위 내용은 관련 AnswerID를 사용하여 추적 테이블에서 NULL QuestionID를 업데이트하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.