나는 이것에 아주 익숙하고 도움이 필요합니다.
pgadmin을 사용하여 한 테이블에서 동일한 데이터베이스의 다른 테이블로 데이터 행을 복사하고 싶습니다. 그러나 열 ID가 약간 다릅니다. 그들과 일치하는 스크립트를 작성하고 복사하는 방법이 있습니까?
도와주세요. 감사합니다.
나는 다음을 시도했다 (STUD 테이블의 기존 데이터를 STUDENT 테이블로 복사).
CREATE TABLE STUDENT(
Student_id INT,
Student_name TEXT,
Student_address TEXT
);
INSERT INTO STUDENT
SELECT * FROM STUD AS D
WHERE(
Student_id = D.id,
Student_name = D.name
);
STUDENT와 STUD 테이블이 2 개 있습니다. STUDENT 테이블 아래에 Student_id, Student_name 및 Student_address가 있습니다. STUD 테이블 아래에 이름과 ID가 있습니다. 두 테이블의 행이 순서가 맞지 않습니다.
** ADD ON **
STUD의 테이블 에는 Student_address 열 이 없습니다 . STUDENT 테이블에만 있습니다. STUD에는 Student_address가 없으므로 STUDENT 테이블에 Student_address를 NULL로 넣고 싶습니다. Stud에 존재하지 않는 STUDENT 테이블의 컬럼이 NULL 인 일반 스크립트를 작성할 수 있습니까?
편집 ** NULL 대신 "TBC"를 삽입해야합니다.
선택에 따라 삽입물 사용 :
insert into student (Student_id, Student_name)
select id, name
from stud;
열 이름은 일치 할 필요가 없으며 데이터 유형 만 일치합니다. 삽입의 대상 목록에 지정하지 않은 모든 열은 null
(또는 더 구체적으로 해당 열에 대해 정의 된 기본값으로) 설정됩니다.
온라인 예 : http://rextester.com/ISCL45721
편집 (요구 사항이 변경된 후)
모든 행에 대해 하나의 열에 상수 값을 삽입하려면 해당 상수를 select 절에 포함합니다.
insert into student (Student_id, Student_name, student_address)
select id, name, 'TBC'
from stud;
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다