• ベストアンサー

テーブルの最後(最新)のレコードを抽出したい

宜しくお願いします。 PHP MYSQL の組み合わせで使っています 以下のようにして、最後のレコードを取り出したいのですが まったく違う事をしているのかもしれません。 $sql =" select * from テーブル where フィールド='max' " ; フィールドはauto_incrementで番号を振っています。 これで最大のつもりなのですが・・・。 他にも、レコードを入れた時間も記録したフィールドがあるのですが どうしてよいか?判りません。 テーブルの最新のレコードを出したいのです。 **その中の一つのフィールドを取り出すのですが、   それはうまくいっているみたいです    (max の所に数字を入れると表示します) お手数かけますが、どなたかご教授お願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

#2回答者です。 MySQL 4.1以前(サブクエリを使えない)なら、以下のような方法が考えられます。 select * from 表名 order by 列名 desc limit 1

kiyomidesuyo
質問者

お礼

ありがとうございます。 初心者の私でも意味が良くわかる簡単な方法を伝授いただきまして! もっと勉強しようと思います 今日はありがとうございました。

その他の回答 (2)

回答No.2

MySQLのバージョンは、いくつですか? 一般的なSQLでは、以下のようなSQLを組みます。 select * from 表名 where 列名=(select max(列名) from 表名)

  • inu2
  • ベストアンサー率33% (1229/3720)
回答No.1

AUTO_INCREMENTを使っているならば LAST_INSERT_ID() で取得できます (LAST_INSERT_IDはMySQLの関数です

kiyomidesuyo
質問者

お礼

スミマセン、勉強不足で。 勉強しなおしてきます・・・。 ありがとうございました。

kiyomidesuyo
質問者

補足

スミマセン、どう使ってよいのか判りません。 *色々してみたのですが・。 $sql =" select * from テーブル where フィールド='max' " ; これはどのように変更したらよいのでしょうか? 宜しくお願いいたします。