이미 생성된 테이블의 컬럼 순서를 바꾸려면 ALTER TABLE ... MODIFY COLUMN ... AFTER ... 구문을 사용합니다.
테이블 생성
mysql> CREATE TABLE DemoTable (
-> `Student_Key_Age` INT,
-> `Student_Key_Name` VARCHAR(20),
-> `Student_Key_CountryName` VARCHAR(20)
-> );
Query OK, 0 rows affected (0.64 sec)
컬럼 순서 변경: Age를 Name 뒤로 이동
mysql> ALTER TABLE DemoTable MODIFY COLUMN `Student_Key_Age` INT AFTER `Student_Key_Name`; Query OK, 0 rows affected (1.15 sec) Records: 0 Duplicates: 0 Warnings: 0
변경 후 테이블 구조 확인
mysql> DESC DemoTable;
+-------------------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------------------+-------------+------+-----+---------+-------+ | Student_Key_Name | varchar(20) | YES | | NULL | | | Student_Key_Age | int(11) | YES | | NULL | | | Student_Key_CountryName | varchar(20) | YES | | NULL | | +-------------------------+-------------+------+-----+---------+-------+ 3 rows in set (0.11 sec)
핵심: AFTER 컬럼명으로 원하는 위치에 배치합니다. FIRST를 쓰면 맨 앞으로 이동합니다. 대용량 테이블에서는 구조 변경 시 테이블이 재구성되므로 시간이 걸릴 수 있습니다.