select한 결과를 가지고 1부터 하나씩 증가하는 번호를 붙여 그것을 다시 update하는 방법입니다.
하지만 이것을 일일이 하기에는 너무 힘들므로 하나의 질의를 가지고처리할 수 있는 방법을 이용하면 됩니다.
우선,번호를 자동으로 하나씩 증가시키기 위해서는 serial number를 사용하면 된다.
그 serial number를 가지고 해당 attribute에 값을 넣어주기만 하면 된다.
1. serial 객체를 먼저 만든다.
create serial s_tmp
2. update 문장을 이용하여 serial number 를 넣어준다. 이때 번호가 부여될 attribute 를 seqno integer라고 가정한다.
update ... set seqno = s_tmp.next_value
만약 이때 seqno 가 integer가 아니고 char 이며 숫자 앞부분에 문자를 넣기를 원한다면 아래와 같이 하면 된다.
update ... set seqno = ''seqno_'' + cast(s_tmp.next_value as char(10)) // cast 부분에 char(10) 에서 10은 seqno의 char size를
사용한다.
하지만 이것을 일일이 하기에는 너무 힘들므로 하나의 질의를 가지고처리할 수 있는 방법을 이용하면 됩니다.
우선,번호를 자동으로 하나씩 증가시키기 위해서는 serial number를 사용하면 된다.
그 serial number를 가지고 해당 attribute에 값을 넣어주기만 하면 된다.
1. serial 객체를 먼저 만든다.
create serial s_tmp
2. update 문장을 이용하여 serial number 를 넣어준다. 이때 번호가 부여될 attribute 를 seqno integer라고 가정한다.
update ... set seqno = s_tmp.next_value
만약 이때 seqno 가 integer가 아니고 char 이며 숫자 앞부분에 문자를 넣기를 원한다면 아래와 같이 하면 된다.
update ... set seqno = ''seqno_'' + cast(s_tmp.next_value as char(10)) // cast 부분에 char(10) 에서 10은 seqno의 char size를
사용한다.