>데이터 베이스 >MySQL 튜토리얼 >필드 구조가 다른 MySQL 테이블 간에 데이터를 어떻게 복사할 수 있습니까?

필드 구조가 다른 MySQL 테이블 간에 데이터를 어떻게 복사할 수 있습니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-23 02:33:13197검색

How Can I Copy Data Between MySQL Tables with Different Field Structures?

MySQL의 테이블 간 데이터 복사

문제:
기존 테이블에서 데이터를 어떻게 전송할 수 있습니까? (이하 표 1이라 함)을 MySQL에서 새로 생성된 테이블(표 2)로 변경하는 방법은 무엇입니까? 표 1에는 특정 필드가 포함되어 있지만 표 2에는 다른 필드 집합이 포함되어 있습니다.

해결책:

이 요구 사항을 충족하기 위해 MySQL은 데이터를 삽입하는 방법을 제공합니다. INSERT INTO 구문을 사용하여 다른 테이블에서 선택하여 테이블에 추가합니다. 이 기술을 사용하면 표 1의 필드를 표 2에 선택적으로 복사할 수 있습니다.

다음 쿼리는 작업을 효과적으로 수행합니다.

INSERT INTO table2 (st_id, uid, changed, status, assign_status)
SELECT st_id, from_uid, now(), 'Pending', 'Assigned'
FROM table1;

이 쿼리는 다음과 같이 작동합니다.

  • INSERT INTO 문에 대상 테이블 table2가 지정되어 있습니다.
  • table2 내의 필드 데이터를 수신할 필드는 괄호 안에 나열됩니다.
  • SELECT 문은 표 1에서 복사할 데이터를 정의합니다.
  • 표 1의 열은 표 2의 해당 필드에 매핑됩니다. 이 경우 st_id, from_uid, 현재 타임스탬프(now()), 'Pending' 및 'Assigned'가 복사됩니다. table2.
  • Table 1의 전체 데이터 세트를 복사하려면 세미콜론(;)을 사용하여 쿼리를 종료해야 합니다. 또는 WHERE 절을 SELECT 문에 추가하여 복사 작업을 위한 특정 행 하위 집합을 선택할 수 있습니다.

위 내용은 필드 구조가 다른 MySQL 테이블 간에 데이터를 어떻게 복사할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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