勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

MySQLで歯抜けになっているint型の数値を取得する

   2014/05/22  MySQL

MySQLで歯抜けになっているシーケンス番号を
取得したいケースがあった。

■ソース
SELECT MIN(seq + 1) AS min_no
FROM test_table a
WHERE NOT EXISTS (
SELECT seq
FROM test_table b
WHERE a.seq + 1 = b.seq
)

■参考サイト
http://okwave.jp/qa/q6093210.html

■その他
EXISTSて何? となったので調べたところ、
結果が存在するか調べる、というものらしい。

http://www.i2kt.com/dbms/sqlref/operator/logic/sql_02030501.html

NOTがついているから、抜け番があった際に
真になって、その抜け番が抽出されているみたい。

 - MySQL

  関連記事

MySQLでデータがあれば上書き、無ければ挿入する

既存のソースを編集時に「REPLACE INTO~~」 という見たことの無いSQ ...

PHPでmysqli関数使用時のプリペアドステートメントの利用方法

PHPでMySQLを扱う際はmysqli関数を、エスケープの際はreal_esc ...

エックスサーバーでMySQLのサイズに注意

エックスサーバーで自動更新のログをMySQLに保存するようなシステムを動かしてい ...

MySQLでデータの集計時に1日の起点を任意の時間に変更する方法

MySQLで1日毎の集計を行う際、例えば2020/01/01のデータは2020/ ...

MySQLのview(ビュー)で仮想的なテーブルを作成する方法

MySQL関連のサイトを見ているとview(ビュー)が云々という記事を見かけた。 ...