기존 테이블의 특정 위치에 컬럼을 추가하려면 after 명령어를 사용합니다. 구문은 다음과 같습니다 -
ALTER TABLE yourTableName ADD COLUMN yourColumnName data type AFTER yourExistingColumnName;
위의 구문을 이해하기 위해 먼저 테이블을 생성해 보겠습니다. 테이블 생성 쿼리는 다음과 같습니다.
mysql> create table changeColumnPosition -> ( -> Id_Position1 int, -> Name_Position2 varchar(100), -> Address_Position4 varchar(200) -> ); Query OK, 0 rows affected (0.53 sec)
이제 desc 명령을 사용하여 기존 테이블의 설명을 확인할 수 있습니다. 구문은 다음과 같습니다 -
desc yourTableName;
다음은 설명을 확인하는 쿼리입니다.
mysql> desc changeColumnPosition;
다음은 출력입니다.
+-------------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------------+--------------+------+-----+---------+-------+ | Id_Position1 | int(11) | YES | | NULL | | | Name_Position2 | varchar(100) | YES | | NULL | | | Address_Position4 | varchar(200) | YES | | NULL | | +-------------------+--------------+------+-----+---------+-------+ 3 rows in set (0.00 sec)
세 개의 열이 있고 Name_Position2 필드 뒤에 다른 열을 추가하고 싶습니다. 쿼리는 다음과 같습니다.
mysql> alter table changeColumnPosition -> add Age_Position3 int after Name_Position2; Query OK, 0 rows affected (1.34 sec) Records: 0 Duplicates: 0 Warnings: 0
Name_Position2 다음에 Age_Position3 열을 성공적으로 추가했습니다. 위에서 수행한 변경 사항에 대해 기존 표를 지금 다시 확인하십시오.
mysql> desc changeColumnPosition;
다음은 출력입니다.
+-------------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------------+--------------+------+-----+---------+-------+ | Id_Position1 | int(11) | YES | | NULL | | | Name_Position2 | varchar(100) | YES | | NULL | | | Age_Position3 | int(11) | YES | | NULL | | | Address_Position4 | varchar(200) | YES | | NULL | | +-------------------+--------------+------+-----+---------+-------+ 4 rows in set (0.01 sec)