\G 옵션이 실행을 위해 명령을 MySQL 서버에 보내고 세미콜론(;)을 사용하여 MySQL이 명령문의 끝을 결정한다는 것을 알고 있습니다. 또한 둘 다 결과 집합의 형식이 다른 것으로 알려져 있습니다.
이제, MySQL 문에서 이 두 가지를 모두 사용할 경우 출력은 MySQL에서 처음으로 접하는 항목을 기반으로 생성됩니다. 다른 경우 MySQL은 오류를 생성합니다. 다음 예의 도움으로 이해할 수 있습니다 -
mysql> Select CURDATE();\G +------------+ | CURDATE() | +------------+ | 2017-11-06 | +------------+ 1 row in set (0.00 sec) ERROR: No query specified
위의 MySQL 문에서 우리는 먼저 세미콜론(;)을 사용한 다음 \G 옵션을 사용하므로 출력을 표 형식으로 받았습니다. 이후 MySQL은 \G 옵션에 대한 쿼리를 지정하지 않았기 때문에 오류가 발생합니다.
mysql> Select CURDATE()\G; *************************** 1. row *************************** CURDATE(): 2017-11-06 1 row in set (0.00 sec) ERROR: No query specified
위의 MySQL 문에서 \G 옵션을 먼저 사용한 다음 세미콜론(;)을 사용하므로 출력을 세로 형식으로 받았습니다. 이후 MySQL은 세미콜론(;)에 대한 쿼리를 지정하지 않았기 때문에 오류가 발생합니다.