13.2.3 DO 구문
DO expr
[, expr
] ...
DO
는 식을 실행하지만 결과는 아무것도 반환하지 않습니다. 대부분의 점에서 DO
는 SELECT
의 줄임말이지만, 그 결과에 관심이없는 경우는 조금 빠르다는 장점이 있습니다. expr
, ...
DO
는 주로 부작용이있는 함수 ( RELEASE_LOCK()
등)에 도움이됩니다.
예 :이 SELECT
문은 일시 정지 합니다만, 결과 세트의 생성도합니다.
mysql> SELECT SLEEP(5);
+----------+
| SLEEP(5) |
+----------+
| 0 |
+----------+
1 row in set (5.02 sec)
반면, DO
는 결과 세트를 생성하지 않고 일시 중지합니다.
mysql> DO SLEEP(5);
Query OK, 0 rows affected (4.99 sec)
이것은 예를 들어, 결과 세트를 생성하는 명령문을 금지하고있는 스토어드 함수 또는 트리거에서 유용 할 수 있습니다.
DO
는 식을 실행하면됩니다. SELECT
를 사용할 수있는 모든 경우에 사용할 수있는 것은 아닙니다. 예를 들어, DO id FROM t1
테이블을 참조하는 데 사용할 수 없습니다.