access 最新のレコードのみを表示

今回のaccessの小技は小技ながら、とても役に立つ小技です。

でも、どう説明したら良いのか?
まあ、まずは実例を見てください。

Hyou1

よく、人事台帳を作るときに上の表のような社員ごとの配属の表を使います。
異動があるので、履歴として残ります。
一人の社員番号に対して異動日ごとに複数のレコードが発生します。

ここで、例えば今日現在の社員名簿を作ろうとする時に、最新のレコードだけを必要とするわけですが、どうすれば良いのでしょうか?

私もこの小技を知る前はレコード上にダミーの異動終了日などを持たせて抽出条件とするような方法を考えたりしていました。

しかし、もっと、スマートな方法があるので、今回ご紹介します。

人気blogランキングへご協力ください。↓↓↓

1.まず、下のような異動履歴を持つテーブルを元にしたクエリがあるとします。
Query2

この中から社員番号に対して、一番新しい異動日を持つレコードのみを抽出したい訳です。

2.そこで、次のようなクエリを作ります。

Query1_2 

3.元となるクエリのコピーを作ります。(右クリックで名前をつけて保存)

Query3

4.コピーのクエリをデザインビューで開きます。
元となるテーブル(上の例ではtb_異動)にカーソルを持っていき、右クリックするとプロパティが表示されます。
プロパティをクリックします。
Query4

5.別名の欄に”別名”をつけます。
名前は何でも良いのですが、上の例では、"temp"と名前を付けています。

Query5_2

6.抽出条件欄に次のように記述します。
(SELECT MAX( [フィールド] ) from [クエリー名] WHERE [キーフィールド] = [クエリー名]![キーフィールド] )

具体的には次のようになります。
(SELECT MAX( [異動日] ) from [Q_異動履歴] WHERE [社員番号] = [temp]![社員番号] )

意味としては、”元となるクエリ上からキーフィールドが同じレコードの中でフィールドが最大となるレコードを抽出する”というような意味あいとなりますが、難しく考えずにそのまま、使ってみてください。

Hyou2

7.異動日が最新のレコードだけが表示されます。

人気blogランキングへご協力ください。↓↓↓

トラックバック(3)

このブログ記事を参照しているブログ一覧: access 最新のレコードのみを表示

このブログ記事に対するトラックバックURL: http://nakashima.qee.jp/blog/mt-tb.cgi/77

» 節約暮し研究所(節約暮し研究所)~のトラックバック

節約暮しに役立つ情報、節約暮しに役立つグッズを研究し紹介するブログです。節約暮しってちょっとした工夫で意外と効果が得られるものですよ。一緒に節約暮しを実践しませんか? 続きを読む

» 遽€邏・坩縺礼皮ゥカ謇€(遽€邏・坩縺礼皮ゥカ謇€)~のトラックバック

遽€邏・坩縺励↓蠖ケ遶九▽諠・ア縲∫ッ€邏・坩縺励↓蠖ケ遶九▽繧ー繝・ぜ繧堤皮ゥカ縺礼エケ莉九☆繧九ヶ繝ュ繧ー縺ァ縺吶€らッ€邏・坩縺励▲縺ヲ縺。繧・▲縺ィ縺励◆蟾・螟ォ縺ァ諢丞、悶→蜉ケ譫懊′蠕励i繧後k繧ゅ・縺ァ縺吶h縲ゆク€邱偵↓遽€邏・坩縺励r螳溯キオ縺励∪縺帙s縺具シ・ 続きを読む

» 節約暮し研究所(節約暮し研究所)~のトラックバック

節約暮しに役立つ情報、節約暮しに役立つグッズを研究し紹介するブログです。節約暮しってちょっとした工夫で意外と効果が得られるものですよ。一緒に節約暮しを実践しませんか? 続きを読む

コメントする

このブログ記事について

このページは、節約おやじが2007年11月24日 23:11に書いたブログ記事です。

ひとつ前のブログ記事は「タイムで玄関アプローチの縁取りを!」です。

次のブログ記事は「cheezaというお菓子が送ってきました。」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.01