chanting an air of joyous bliss

普段の生活で見逃しがちな面白いことを書いていく
そんなブログです

欠番探索

2005-10-31 12:31:52 | コンピュータ・プログラミング
@ITのDatabase Expert 会議室でシーケンスオブジェクトと採番テーブルの話題がある。
この中で、第三の方法として欠番検索 という方法があるとの投稿があった。
具体的には
select NEW_CODE = min(t1.CODE + 1)
from (
select CODE from [TABLE] union all
select CODE from [RESERVE] (READUNCOMMITTED)
) t1 left outer join (
select CODE from [TABLE] union all
select CODE from [RESERVE] (READUNCOMMITTED)
) t2 on (t1.CODE + 1) = t2.CODE
where t2.CODE is null
(上記サイト、"未記入"さんの投稿より)
というSQLを組めばいいらしい
SQLに慣れていない分かりづらいかもしれない
が、このページのjoinやunionの説明を参考にすると、確かに欠番を探索しているSQLであることがわかる。

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 別府温泉 | トップ | Java & XML »
最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

コンピュータ・プログラミング」カテゴリの最新記事