네, 가능합니다. MySQL에서도 PostgreSQL과 유사한 확장 출력(expanded output) 기능을 사용할 수 있습니다. 방법은 간단합니다. 쿼리 마지막의 세미콜론(;) 대신 \G를 입력하면 됩니다.
확장 출력 기본 문법
SELECT * FROM yourTableName\G
일반적인 세미콜론 방식은 결과를 표(테이블) 형태로 가로로 출력하지만, \G를 사용하면 각 행이 세로 방향으로 정렬되어 출력됩니다. 컬럼이 많거나 값이 길어서 터미널에서 결과가 잘리거나 지저분하게 보일 때 특히 유용합니다.
예제 테이블 생성하기
먼저 예제로 사용할 테이블을 생성해 보겠습니다.
mysql> create table expandedOutputDemo
- > (
- > EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
- > EmployeeName varchar(20),
- > EmployeeAge int
- > );
Query OK, 0 rows affected (0.66 sec)샘플 데이터 삽입하기
INSERT 명령을 사용해 몇 개의 레코드를 추가합니다.
mysql> insert into expandedOutputDemo(EmployeeName,EmployeeAge) values('Larry',27);
Query OK, 1 row affected (0.16 sec)
mysql> insert into expandedOutputDemo(EmployeeName,EmployeeAge) values('Mike',29);
Query OK, 1 row affected (0.12 sec)
mysql> insert into expandedOutputDemo(EmployeeName,EmployeeAge) values('Sam',31);
Query OK, 1 row affected (0.10 sec)
mysql> insert into expandedOutputDemo(EmployeeName,EmployeeAge) values('Bob',24);
Query OK, 1 row affected (0.14 sec)
mysql> insert into expandedOutputDemo(EmployeeName,EmployeeAge) values('Carol',28);
Query OK, 1 row affected (0.09 sec)일반 SELECT 문으로 전체 레코드 조회하기
먼저 평소처럼 세미콜론을 붙여 SELECT 문을 실행해 보겠습니다.
mysql> select *from expandedOutputDemo;
실행 결과는 다음과 같습니다.
+------------+--------------+-------------+ | EmployeeId | EmployeeName | EmployeeAge | +------------+--------------+-------------+ | 1 | Larry | 27 | | 2 | Mike | 29 | | 3 | Sam | 31 | | 4 | Bob | 24 | | 5 | Carol | 28 | +------------+--------------+-------------+ 5 rows in set (0.00 sec)
\G를 사용한 확장 출력
이번에는 같은 쿼리 끝에 세미콜론 대신 \G를 붙여 확장 출력 형식으로 조회해 보겠습니다.
mysql> select *from expandedOutputDemo\G
실행 결과는 다음과 같습니다.
*************************** 1. row ***************************
EmployeeId: 1
EmployeeName: Larry
EmployeeAge: 27
*************************** 2. row ***************************
EmployeeId: 2
EmployeeName: Mike
EmployeeAge: 29
*************************** 3. row ***************************
EmployeeId: 3
EmployeeName: Sam
EmployeeAge: 31
*************************** 4. row ***************************
EmployeeId: 4
EmployeeName: Bob
EmployeeAge: 24
*************************** 5. row ***************************
EmployeeId: 5
EmployeeName: Carol
EmployeeAge: 28
5 rows in set (0.00 sec)정리
MySQL의 \G 옵션은 PostgreSQL의 확장 출력(\x)과 비슷한 역할을 합니다. 컬럼 수가 많은 테이블을 조회할 때 가독성이 크게 향상되므로, 디버깅이나 데이터 확인 작업 시 적극적으로 활용해 보시기 바랍니다. 참고로 \G는 쿼리 종결자 역할도 하기 때문에 세미콜론을 함께 붙이지 않아도 정상적으로 실행됩니다.