質問: oracle sql 以下のようなことを実現する方法についてお教え頂きたいです。 ■テーブル [xxxマスタ] id char(8) 上記のテーブルにはidという項目があるのですが、このテーブルで 使用していないidのみをsqlで抽出できないかと考えております。 ただし、なるべくならワークテーブルのようなものは利用せずに 行いたいと思っております。 いい方法があれば教えていただきたいです。
回答: こんにちわ。 > 上記のテーブルにはidという項目があるのですが、このテーブルで > 使用していないidのみをsqlで抽出できないかと考えております。 id にどのような書式でデータが格納されているか記載されていないので '00000001' から連番で入っていると仮定して 00001000までの間で使用 していない番号を求めるなら、こんな感じです。 select to_char(level, 'fm00000000') as id from dual connect by level <= 1000 minus select id from xxxマスタ;