MySQLで歯抜けになっているint型の数値を取得する
2014/05/22
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でROW_NUMBER関数を使用してグループ毎に連番を設定する方法
以前にMySQLでオートインクリメントを使用せずにグループ毎に連番を設定する方法 ...
-
-
MySQLで同一サーバーの異なるDB内のテーブルをJOINする
同一のMySQLサーバーでdb1データベースのtable1テーブルと、db2デー ...
-
-
MySQLで特定カラムの
タグを改行コードに一括置換させる方法MySQLで特定カラムの<br>タグを改行コードに一括置換したかった ...
-
-
mysqldumpが使えないレンタルサーバでMySQLのバックアップ
mysqldumpが使えないレンタルサーバで開発を行うことがあり、尚且つ他社に使 ...
-
-
WordPressサイトのロードアベレージが高い際の対応方法
あるWordPressサイトのロードアベレージが先月ぐらいまでは通常0.5前後で ...