반응형
1~2,000,000 의 값을 명령어 하나로 해결하는 방법 !!
DELIMITER $$
CREATE PROCEDURE twoMillion()
BEGIN
DECLARE i INT DEFAULT 1;
WHILE i <= 2000000 DO
INSERT INTO nowtime(id, num) VALUES (i, i);
SET i = i + 1;
END WHILE;
END$$
// DELIMITER : 직역으로 해석하면 '구문 문자'이고, C나 JAVA에서 쓰이는 ';'(세미콜론)과 같은 역할을 한다고 보시면 됩니다. 즉, 문법의 시작과 끝을 나타내는 역할을 합니다.
// CREATE PROCEDURE 프로시저이름() : 프로시저의 이름으로 프로시저를 생성.
// BEGIN : 프로시저가 실행되면서 일어날 로직의 시작과 끝.
// DECLARE 변수명 변수타입 default (디폴트로 설정할 값): 자바에서 쓰는 변수처럼 프로시저 안에서 사용할 변수를 선언.
// SET (DECLARE에서 선언한 변수) : 대입할 값은 원하는 값으로 세팅한다.
// WHILE (DECLARE에서 선언한 변수) : WHILE문은 반복문으로 쓰이면서 i라는 함수가 조건에 맞을때까지 반복해서 실행됨.
// 전체적으로 해석해보면 nowtime테이블에(id, num)에 해당하는 컬럼에 (i, i)라는 값으로 넣겠다라는 함수인데 i가 1부터 2,000,000이므로 1~2,000,000이라는 값이 들어가게 됩니다.
반응형
'DB > Mysql' 카테고리의 다른 글
[Mysql] primary key 추가, 삭제, 수정 (0) | 2021.12.07 |
---|---|
[Mysql] DB 기본 사용법 (0) | 2020.04.07 |
댓글