두 개의 SELECT 문을 사용하여 첫 번째 테이블의 값을 다른 테이블에 삽입하려면 SUBQUERY를 사용하십시오. 이렇게 하면 단일 MySQL 쿼리만 사용하여 두 번째 테이블에서 결과를 얻을 수 있습니다. 먼저 테이블을 생성하겠습니다 -
mysql> 테이블 생성 DemoTable1( Name varchar(100), Score int);Query OK, 영향을 받는 행 0개(1.30초)
삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -
mysql> insert into DemoTable1 values('Chris',45);Query OK, 1개의 row가 영향을 받았습니다(0.12초)mysql> insert into DemoTable1 values('Bob',78);Query OK, 1개의 row가 영향을 받았습니다(0.13초). )mysql> insert into DemoTable1 values('David',98);Query OK, 1개의 row가 영향을 받음 /사전>select 문을 사용하여 테이블의 모든 레코드 표시 -
mysql> Select *from DemoTable1;이것은 다음과 같은 출력을 생성합니다 -
+-------+-------+| 이름 | 점수 |+-------+-------+| 크리스 | 45 || 밥 | 78 || 데이비드 | 98 || 캐롤 | 89 |+-------+-------+4행 세트(0.00초)다음은 두 번째 테이블을 생성하는 쿼리입니다.
mysql> Create table DemoTable2( StudentName varchar(100), StudentScore int);Query OK, 영향을 받는 행 0개(0.58초)이제 두 개의 SELECT 문을 사용하여 첫 번째 테이블에서 두 번째 테이블로 값을 삽입하는 MySQL 쿼리를 작성해 보겠습니다. -
mysql> insert into DemoTable2(StudentName,StudentScore) values((Select Name from DemoTable1 where Score=98),(select Score from DemoTable1 where Name='David'));Query OK, 영향을 받는 1개 행(0.30초)select 문을 사용하여 테이블의 모든 레코드 표시 -
mysql> select *from DemoTable2;+-------------+----------------+| 학생 이름 | 학생 점수 |+-------------+-------------+| 데이비드 | 98 |+-------------+--------------+1 행 세트(0.00초)