Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL에서 쿼리를 여러 줄로 작성하는 방법

MySQL에서는 하나의 SQL 문을 여러 줄에 걸쳐 자유롭게 작성할 수 있습니다. 그 이유는 MySQL이 문(statement)의 끝을 판단할 때 입력 줄의 끝이 아니라 종료 세미콜론(;)을 기준으로 삼기 때문입니다.

예제

mysql> Select *
    -> from
    -> stock_item;
+------------+-------+----------+
| item_name  | Value | Quantity |
+------------+-------+----------+
| Calculator | 15    | 89       |
| Notebooks  | 63    | 40       |
| Pencil     | 15    | 40       |
| Pens       | 65    | 32       |
| Shirts     | 13    | 29       |
| Shoes      | 15    | 29       |
| Trousers   | 15    | 29       |
+------------+-------+----------+
7 rows in set (0.00 sec)

위 예제에서 볼 수 있듯이, 하나의 SELECT 쿼리를 여러 줄로 나누어 입력했음에도 MySQL은 종료 세미콜론을 만나기 전까지는 아무런 결과를 반환하지 않습니다. 세미콜론이 입력된 순간에 비로소 전체 문장을 실행하고 결과를 출력합니다.

자유 형식(Free-format) 입력 지원

이러한 동작 방식 때문에 MySQL은 자유 형식(free-format) 입력을 인식한다고 말할 수 있습니다. 즉, MySQL은 사용자가 입력하는 각 줄을 개별적인 명령으로 처리하지 않고, 줄바꿈과 상관없이 입력 내용을 계속 모아 두었다가 종료 세미콜론을 발견하면 그때 비로소 문장을 완성하여 실행합니다.

덕분에 긴 쿼리나 복잡한 조인문을 들여쓰기와 줄바꿈을 활용해 가독성 좋게 정리하여 작성할 수 있으며, 이는 코드 유지보수와 디버깅에도 큰 도움이 됩니다.