MySQL에서 PostgreSQL의 generate_series() 흉내내기

테스트 데이터 Set을 만들때, 일련 번호를 생성하는 PostgreSQL의 generate_series() 함수는 매우 유용합니다. 그런데 MySQL은 이런 함수를 내장하고 있지 않습니다. (조금 불편하네요)

이를 보완하기 위해서 Function을 만들어서 공유해준 분이 있습니다.

Function은 많은 기능들을 제공하나, 일련 번호 생성을 위해서는 이 중에서 generate_series_base(), generate_series_n_base(), generate_series() 함수만 생성하면 됩니다.

generate_series() 함수 수행 후에는 해당 결과가 series_tmp 테이블에 저장됩니다. 따라서 다음과 같은 순서로 일련 번호를 테이블에 입력하면 됩니다.

  1. CALL generate_series(1,100000);
  2. insert into t1 (c1) select * from series_tmp;
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s