- ベストアンサー
オートインクリメントの最新の値
いずれかの方法で、オートインクリメントで記録している数字の最新のものを取得したいです。 (PHP/MySQL) 考えているのは オートインクリメントのフィールドの中から一番大きいものを取得 という方法ですが、WHEREの条件式をどのように書けばいいかがわかりません。 また、他にいい方法があれば教えていただきたいです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
最大値を取り出せばいいのなら SELECT MAX(id) AS maxnum FROM table で取れるはずです。 正式な値をとりたいなら SHOW TABLE STATUS WHERE Name = 'table' として、返った結果にAuto_increment値があります。
その他の回答 (1)
- nora1962
- ベストアンサー率60% (431/717)
回答No.1
mysql の last_insert_id() ではどうでしょう。 http://dev.mysql.com/doc/refman/5.1/ja/information-functions.html 「オートインクリメントのフィールドの中から一番大きいものを取得」 は同時実行トランザクションがあった場合正しくない値を返すのでお勧めしません。
質問者
補足
インサート直後ならそれで取得ができると思いますが、ただデータを引き出すだけでは、返り値は0になってしまいました。(もちろん、データ上の最大値は0ではありません。) 番号の範囲指定のためだけなので、自分で確認する、というのも手ですが、やはり、取得できたらいいなぁと思うので。
お礼
できました!! ありがとうございます。