• ベストアンサー

新しい日付のデータ副問い合わせ

画面からIDを入力し、TABLEBの雇員IDと画面IDが一致した時の 登録日が最終データを取り出したいのですが、 ====================== 画面入力 ID 222222 ====================== TABLE B 雇員ID 登録日 項目A 項目B 111111 2007/01/1 AX AY 111111 2006/12/02 AY AB 222222 2006/06/01 AZ AH 222222 2005/05/03 AJ AK 結果 222222 2006/06/01 AZ AH select * form TABLEB where 登録日=(select max(登録日) from tableb where 雇員ID=222222) でうまくいかにのですがどこに原因がありますでしょうか。 環境 windowsXP sql :MS sqlserve

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

  • ベストアンサー
  • stiffels
  • ベストアンサー率34% (25/72)
回答No.1

うまくいかないというのがエラーになるのか、目的のレコードが取れないのか よくわからないのですが 副と主の両方で雇用IDを指定してみてはどうですか? SELECT * FORM TABLEB WHERE 雇員ID=222222 AND 登録日=(SELECT MAX(登録日) FROM TABLEB WHERE 雇員ID=222222)

obone
質問者

お礼

うまくいきました。 ありがとうございました。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

こんな感じでやれば十分では? SELECT * FROM `TABLEB` WHERE `雇員ID`='222222' ORDER BY `登録日` DESC LIMIT 1

obone
質問者

お礼

LIMIT が使えないようです。

関連するQ&A