집 >데이터 베이스 >MySQL 튜토리얼 >MySQL의 테이블에 하위 쿼리의 여러 행을 삽입하는 방법은 무엇입니까?
하위 쿼리의 여러 행을 테이블에 삽입
두 개 이상의 행을 반환하는 하위 쿼리를 사용하여 테이블에 여러 행을 삽입하려고 하면, 오류 1242(21000)가 발생할 수 있습니다. 하위 쿼리가 2개 이상의 행을 반환합니다. 이 오류는 단일 INSERT 문을 사용하여 여러 행을 삽입하는 것에 대한 MySQL의 제약 때문에 발생합니다.
이 문제를 해결하려면 다음 기술을 사용하십시오.
삽입하려는 정적 행 데이터를 다음과 결합하세요. 하위 쿼리. 예를 들어 하위 쿼리에서 반환된 각 행에 대해 "names"라는 열에 "Henry"라는 이름을 삽입하려면 다음과 같이 쿼리를 수정합니다.
INSERT INTO Results (People, names) SELECT d.id, 'Henry' FROM Names f JOIN People d ON d.id = f.id
이 수정된 쿼리에서 정적 값 'Henry'가 하위 쿼리와 결합됩니다. 결과적으로 하위 쿼리에서 반환된 각 행에는 'Henry' 값으로 채워진 "names" 열이 있습니다.
위 내용은 MySQL의 테이블에 하위 쿼리의 여러 행을 삽입하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!