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

관련 테이블을 사용하여 데이터베이스 테이블에서 NULL QuestionID를 업데이트하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2025-01-10 06:48:46542검색

How to Update NULL QuestionIDs in a Database Table Using a Related Table?

데이터베이스 테이블 업데이트: 참조된 값으로 열 정렬

귀하의 질문은 QuestionID 열에 Null 값이 포함된 데이터베이스 테이블 업데이트와 관련이 있습니다. 이러한 Null 값을 AnswerID 열에서 참조하는 관련 테이블 'Answers'의 해당 QuestionID 값과 동일하게 설정하려고 합니다.

이를 달성하려면 내부 조인을 활용할 수 있습니다. 다음 쿼리는

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 값을 기반으로 QuestionTrackings 및 QuestionAnswers 테이블의 행 간에 연결을 설정하는 방법을 보여줍니다. 이를 통해 QuestionTrackings 테이블의 각 행에 대한 QuestionAnswers 테이블의 QuestionID 값에 액세스할 수 있습니다.

WHERE 절에 추가 조건을 추가하여 업데이트할 행의 범위를 더 좁힐 수 있습니다. 예를 들어, QuestionID가 null이고 AnswerID가 500보다 작은 행만 업데이트하려는 경우:

UPDATE QuestionTrackings q
INNER JOIN QuestionAnswers a ON q.AnswerID = a.AnswerID
SET q.QuestionID = a.QuestionID
WHERE q.QuestionID IS NULL AND q.AnswerID < 500;

정확성을 보장하기 위해 업데이트를 실행하기 전에 선택 쿼리를 사용하여 업데이트할 행을 미리 보는 것이 좋습니다. :

SELECT *
FROM QuestionTrackings q
INNER JOIN QuestionAnswers a ON q.AnswerID = a.AnswerID
WHERE q.QuestionID IS NULL;

이렇게 하면 각 AnswerID에 연결된 QuestionID가 하나만 있는지 확인하고 업데이트 프로세스 중 발생할 수 있는 오류를 방지하는 데 도움이 됩니다.

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

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