MySQL4.1に格納されているデータを取り出したいのですが以下のような場合はどうしたらよいのでしょうか


■データを取り出すテーブル

id | goods_id | date
---------------------
1 | 1 | 1017
1 | 1 | 1018
2 | 2 | 1015


上記のテーブルからidが1で、goods_idが1、かつdateが最大値を持つレコードのみを取り出したいです

ずばりな回答を具体的にいただけた場合は300ポイント差し上げます
よろしくお願いします

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2007/05/18 08:10:23
  • 終了:2007/05/18 09:18:08

ベストアンサー

id:F-15X No.3

F-15X回答回数111ベストアンサー獲得回数132007/05/18 09:12:00

ポイント300pt

こちらでいかがでしょうか。

select * from テーブル

where id = 1

and   goods_id = 1

and   date = 

(

  select max(date) from テーブル

  where id = 1

  and   goods_id = 1

)

id:jayz

ありがとうございます

ずばりです

2007/05/18 09:17:19

その他の回答(2件)

id:taknt No.1

きゃづみぃ回答回数13481ベストアンサー獲得回数11982007/05/18 09:05:24

ポイント28pt

select max(date) from テーブル名 where id=1 and goods_id =1

このSQLで どうでしょうか?


http://dev.mysql.com/doc/refman/4.1/ja/example-maximum-row.html

id:jayz

回答ありがとうございます

これだと得られる値は最大値のみですね^^;

2007/05/18 09:16:02
id:GEN111 No.2

GEN111回答回数472ベストアンサー獲得回数582007/05/18 09:08:12

ポイント28pt
SELECT * 
FROM TABLENAME
WHERE goods_id =1
AND date = (SELECT max( date ) FROM TABLENAME)

こんな感じではどうでしょうか。

MySQL AB :: MySQL 4.1 リファレンスマニュアル :: 3.6.1 カラムの最大値

id:jayz

回答ありがとうございます

これだとIDが抜けているようです

2007/05/18 09:17:10
id:F-15X No.3

F-15X回答回数111ベストアンサー獲得回数132007/05/18 09:12:00ここでベストアンサー

ポイント300pt

こちらでいかがでしょうか。

select * from テーブル

where id = 1

and   goods_id = 1

and   date = 

(

  select max(date) from テーブル

  where id = 1

  and   goods_id = 1

)

id:jayz

ありがとうございます

ずばりです

2007/05/18 09:17:19

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません