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

MySQL에서 한 줄에 여러 개의 문(Statement)을 입력하는 방법

MySQL 한 줄에 여러 문 입력하기

MySQL에서 하나의 쿼리는 일반적으로 SQL 문장과 그 뒤에 오는 세미콜론(;)으로 구성됩니다. 여기서 중요한 점은 세미콜론으로 구분하기만 하면 여러 개의 MySQL 문을 한 줄에 동시에 입력할 수 있다는 것입니다.

기본 원리

MySQL 클라이언트는 세미콜론을 문장의 끝을 나타내는 구분자로 해석합니다. 따라서 한 줄에 여러 문장을 작성하더라도 각 문장이 세미콜론으로 올바르게 종료되어 있다면, MySQL은 이를 순서대로 하나씩 실행하고 결과도 입력한 순서대로 출력합니다.

예제

다음 예제를 통해 확인해 보겠습니다. 두 개의 SELECT 문을 세미콜론으로 구분하여 한 줄에 입력한 경우입니다.

mysql> Select * from Student; Select * from Student ORDER BY Name;
+--------+--------+--------+
| Name   | RollNo | Grade  |
+--------+--------+--------+
| Gaurav | 100    | B.tech |
| Aarav  | 150    | M.SC   |
| Aryan  | 165    | M.tech |
+--------+--------+--------+
3 rows in set (0.00 sec)

+--------+--------+--------+
| Name   | RollNo | Grade  |
+--------+--------+--------+
| Aarav  | 150    | M.SC   |
| Aryan  | 165    | M.tech |
| Gaurav | 100    | B.tech |
+--------+--------+--------+
3 rows in set (0.07 sec)

결과 분석

위 예제에서 두 개의 문장이 세미콜론으로 구분되어 한 줄에 입력되었고, MySQL은 다음과 같이 처리했습니다.

  • 첫 번째 문장: Select * from Student; — Student 테이블의 모든 행을 저장된 순서대로 조회합니다.
  • 두 번째 문장: Select * from Student ORDER BY Name; — 같은 테이블의 데이터를 이름(Name) 기준으로 정렬하여 조회합니다.

실행 결과를 보면 첫 번째 결과 집합이 먼저 출력되고, 이어서 두 번째 결과 집합이 순차적으로 출력된 것을 확인할 수 있습니다. 즉, MySQL은 한 줄에 입력된 여러 문장을 작성된 순서대로 차례로 실행합니다.

주의 사항

  • 각 문장은 반드시 세미콜론으로 종료해야 합니다. 세미콜론이 없으면 MySQL은 문장이 아직 완료되지 않았다고 판단하여 실행하지 않습니다.
  • 여러 문장을 한 줄에 작성하면 가독성이 떨어질 수 있으므로, 간단한 조회나 테스트 목적에 적합합니다.
  • 복잡한 로직이나 조건부 실행이 필요한 경우에는 저장 프로시저(Stored Procedure)를 사용하는 것이 더 안전하고 체계적입니다.