勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

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

  関連記事

MySQLで実行結果の行数取得

DBにデータがあるか調べる際にしばしば使用してたのでメモ。 $sql = " S ...

お名前SDサーバにMySQLデータのインポート

お名前.comのレンタルサーバにそこそこ大きいサイズのMySQLデータを移行した ...

ランダム表示のページング

MySQLからデータを持ってくる際に、 ランダムな表示を行ってほしいと言われた。 ...

MySQLでテーブルの詳細情報を取得

MySQLでテーブルの詳細情報を取得 desc テーブル名; ■サンプル mys ...

文字コードのutf8_general_ciとutf8_unicode_ciの違い

MySQLで設定する時に使っているサーバーによってデフォルトの文字コードがutf ...

htmlspecialcharsを通してMySQLに格納したものを元に戻して出力

MySQLにHTMLタグを入れたくない場合にhtmlspecialcharsを使 ...

直近のクエリで発行されたAUTO_INCREMENTの値を取得する

やりたかったことは、 新規登録(INSERT)なら、登録時のAUTO_INCRE ...

MySQLでカラム内容によって条件分岐させたい

MySQLでカラムの内容によって条件を分岐させたかった。またPHPで処理するので ...

MySQLのエラーログ取得関数

場合によってログに出力させたい値が異なる場合があったのでメモ。 function ...

WordPressサイトのロードアベレージが高い

あるWordPressサイトのロードアベレージが先月ぐらいまでは通常0.5前後で ...