- ベストアンサー
Accessで最新の2件の日付を取得する方法
cornet_skyの回答
IDごとにそれぞれ2件ずつ表示させたいということですね。先程のクエリに別のクエリを以下のとおり差分で最大を出せば2件目の最大が抽出されますので1回目に抽出したファイルとマージして1つのテーブルにすればできます。 SELECT テーブル1.ID, Max(テーブル1.日付) AS 日付の最大1 INTO 抽出2 FROM テーブル1 LEFT JOIN 抽出 ON (テーブル1.ID = 抽出.ID) AND (テーブル1.日付 = 抽出.日付の最大) GROUP BY テーブル1.ID, 抽出.ID HAVING (((抽出.ID) Is Null)) ORDER BY テーブル1.ID; クエリは3回実行することになりますが、マクロで実行すれば簡素化できます。
関連するQ&A
- アクセス2010 最新データを抽出する方法
はじめまして。 アクセスを猛勉強中の初心者です。 過去記事を探しましたが、解決できませんでしたのでご教示お願いします。 やりたいことは、2つのテーブルからクエリを使って、最新のデータを抽出したいです。 ですが、その中に抽出したくないワードが存在します。 それ以外のワードで最新のデータを抽出したいです。 まず、下記のような2つのテーブルがあります。 ●テーブル1 ・ID(主キー) ・日付 ・コメント ・顧客ID ●テーブル2 ・顧客ID(主キー) ・顧客名 ・住所 次にこのテーブルをクエリにしてデータを返すと、下記のようになります。 日付 コメント 顧客名 ・2/1 保留 Aさん ・2/1 発送 Bさん ・2/1 相談 Cさん ・2/2 次回未定 Bさん ・2/3 発送 Aさん ・2/4 次回未定 Dさん 今回抽出したいデータは、「発送」というワードをはぶいた最新のデータをとりたいということです。 なので、データとしては、 日付 コメント 顧客名 ・2/1 保留 Aさん ・2/1 相談 Cさん ・2/2 次回未定 Bさん ・2/4 次回未定 Dさん と、このように抽出したいのです。 最新データの抽出にはMax関数を使ってでき、いらないワードである「発送」はクエリのフィールドの抽出条件に『<>”発送”』と入力することで抽出を防ぐことができたのですが、これらの方法でMax関数を入れて最新データの抽出をしようとすると、全ての「発送」を除いたデータが抽出されるので、最新データに該当する顧客のデータが消えてしまいます。 なので、本来のコメントデータが分からない状態になります。 また、エクセル側でパラメータクエリを使って資料を作成し、アクセスに触ったことがない人たちが使用するので、アクセスを更新してといったことができません。 なので、更新クエリなどを使ってのやり方以外の方法はないでしょうか? 全くの初心者ですので、言葉足らずで説明が分かり辛くて申し訳ありません。 ご教示をお願いいたします。
- ベストアンサー
- オフィス系ソフト
- Access 日付抽出について
Access2000のクエリにて、ある特定日付の抽出ができません。 テーブルの日付項目は、日付/時刻型です。 テーブルを開くと、「2008/02/01 12:59:00」のように見えます。 クエリで抽出する時に、「#2008/02/01#」で抽出されると思って いるのですが、実行すると抽出できません。 どのようにクエリ設定をすればよろしいでしょうか?
- ベストアンサー
- オフィス系ソフト
- Accessでの抽出について
Accessでのクエリーでの抽出の方法を教えてください。 たとえば「12345678」といったIDをもたせた人のデータが日付ごとにいくつかレコードがある場合に、クエリーのID欄の抽出条件欄には、「12345678」と入力すれば、その人のデータのみが表示されると思います。 そこで、 (1)その中の日付から、最新のものから3つを抽出したい場合。 (2)その中の日付から、2番目に新しいものを抽出したい場合。 において、クエリーの抽出条件になんて書いたらよいのでしょうか? できましたら、(1)(2)それぞれお答えいただければ幸いです。 どうぞよろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- ACCESS 一番最新の日付の金額を出したいのですが・・
社員ID/交通費/登録日 のフィールドがあるテーブルがあります。 社員ID/交通費/登録日 0001 800 2007/4/1 0002 400 2007/4/2 ・ ・ 0001 700 2007/5/2 となった場合、0001の人は700円と言う風に登録日が最新のものを抽出したいのですが クエリをつくり登録日の集計を「最大」にしてみたら、日付は5/2がちゃんと出ますが、金額がその登録日以外の金額になるのです。 どうすればよいでしょうか? 分かる方教えて下さい。宜しくお願いします。
- ベストアンサー
- その他(データベース)
- SQLで最新の3件分の統計をとりたい
お世話になります。 Access2000のSQLを使用しています。 下記のテーブルAから、最新の3件分の結果を取得したいのですが、 どのようにSQLを作成すればよいでしょうか? 誠に勝手ですが、SQL文で回答頂ければ助かります。 ※クエリでも結構ですので教えて頂ければと思います。 以上宜しくお願い致します。 --テーブルA-- 日付 名前 2013/6/1 A 2013/4/1 B 2013/7/1 C 2013/3/1 D --結果B(最新の日付の3つ-- 2013/7/1 C 2013/6/1 A 2013/4/1 B
- ベストアンサー
- その他(プログラミング・開発)
- アクセスのテキスト型フィールドの初期値
アクセスのテーブルにテキスト型フィールド「●●日付」を作成しました。さらに、定型入力の方法として、日付(____/__/__)を指定しています。 このテーブルから、クエリでデータを取得する際、●●日付にデータを入力していないレコードのみを取得したいと思い、クエリの抽出条件として=""(ダブルクォーテーション)や=''(シングルクォーテーション)と記載したのですが、レコードが1件も抽出されません(もちろん●●日付にデータを入れていないレコードは複数あります)。一方で、<>""や<>''で、●●日付にデータが入力されているレコードを抽出しようとした場合は、●●日付にデータが入力されているレコードが抽出されます。 テキスト型フィールドにデータが入力されていないレコードを抽出するクエリはどのようにしたら作成できるのでしょうか?
- ベストアンサー
- その他(プログラミング・開発)
- Accessクエリのデータ表示件数について
テーブルにあるデータを、クエリにより抽出したのですが、テーブルにあるデータ/14328件の内、8414件しか抽出されません(日付フィールドの2000/10/1以降のデータのみ表示される)。クエリに日付等の抽出条件は設定していません。何かデータ表示件数制限等の設定があるのでしょうか?いろいろ試してみましたがダメでした。アドバイス宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- access 日付
はじめまして。 access(初心者)です。 データを抽出したいのですが、 クエリの抽出条件にどのように条件入力してよいのか 分かりません。 テーブル名:商品マスタ データ 商品No. 開始日 終了日 価格 (1) 100 2008/12/01 2009/06/30 \1,000 (2) 100 2009/07/01 2010/02/01 \1,500 (3) 100 2010/03/01 2010/12/31 \2,000 このテーブルから、例えば、今日=2010/01/04 が含まれているデータを抽出したいのですが。。。 上の例で言うと、答えは(2) 本当すみませんが、教えて下さい。
- 締切済み
- その他(業務ソフトウェア)
- Accessを使って日付を比較したい
MSofficeのAccessを使用して日付を比較したいのですが上手くいきません。 テーブル1のフィールドには実施日(日付型)、A期間開始日(日付型)、A期間終了日(日付型)があり データ1は2012/04/20、2012/04/15、2012/05/02 データ2は2012/04/25、2012/04/10、2012/04,23と格納されています。 この実施日がA期間に入るかどうかのチェックを行いたいのです。 クエリに入力した関数は IIf(CDate([テーブル1]![A期間開始日])<=CDate([テーブル1]![実施日])>=CDate([テーブル1]![A期間終了日]),"A期間","範囲外") と命令を書きました。 実行させるとデータ1、データ2とも期間外が返されました。 実際、返して欲しいデータはデータ1はA期間、データ2は期間外と表示したいのです。 環境はWindows XP profissional、アクセスは2002 SP3です。 よろしくお願いします。
- ベストアンサー
- その他MS Office製品
- Accessクエリ
お世話になります。 Access初学者です。 グループごとに日付が最大のレコードを、それぞれ1件抽出するクエリを作成したいと思っています。 IDを表示させなければできるのですが、IDを表示させると全レコードが抽出されます。どのようにすればいいのでしょうか? よろしくお願いします。
- ベストアンサー
- Access(アクセス)
お礼
ありがとうございました。とても助かりました。