집 >데이터 베이스 >MySQL 튜토리얼 >MySQL에 데이터를 삽입할 때 \'열 개수가 값 개수와 일치하지 않습니다\' 오류를 해결하는 방법은 무엇입니까?
MySQL에서 한 테이블의 데이터를 다른 테이블에 삽입
다음과 같은 쿼리를 사용하여 한 테이블의 데이터를 다른 테이블에 삽입하려고 할 때:
INSERT INTO mt_magazine_subscription ( magazine_subscription_id, subscription_name, magazine_id, status ) VALUES ( (SELECT magazine_subscription_id, subscription_name, magazine_id FROM tbl_magazine_subscription ORDER BY magazine_subscription_id ASC), '1')
다음 오류 메시지가 나타날 수 있습니다.
#1136 - Column count doesn't match value count at row 1
INSERT 문에 지정된 열 수가 하위 쿼리에 제공된 값 수와 일치하지 않기 때문입니다.
해결책
이 문제를 해결하려면 다음과 같이 INSERT...SELECT 구문을 사용하십시오.
INSERT INTO mt_magazine_subscription ( magazine_subscription_id, subscription_name, magazine_id, status ) SELECT magazine_subscription_id, subscription_name, magazine_id, '1' FROM tbl_magazine_subscription ORDER BY magazine_subscription_id ASC
이 수정된 쿼리에서 '1 ' 상태 열의 값은 SELECT 부분에서 직접 인용됩니다. INSERT...SELECT 구문을 사용하면 삽입할 열을 지정하고 다른 테이블이나 하위 쿼리에서 삽입할 값을 선택하여 열 수와 값이 일치하는지 확인할 수 있습니다.
위 내용은 MySQL에 데이터를 삽입할 때 \'열 개수가 값 개수와 일치하지 않습니다\' 오류를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!