• ベストアンサー

Access2000のクエリで年齢層の抽出。

Access2000で顧客管理のデータベースを作っています。顧客の生年月日をテーブルに入力しています。クエリで20代の顧客、30代の顧客…などの検索ができるようにしたいのですが、どのようにしたらいいでしょうか? 式ビルドでその時点での年齢を求める関数を作成すれば良いのか…と考えたのですが上手くいきません。 よろしくお願い致します。

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

  • ベストアンサー
  • Nii
  • ベストアンサー率48% (79/162)
回答No.2

私はdatediff関数を使用してます。 年齢:datediff("yyyy",[生年月日],date()) 後、クエリで20代の顧客、30代の顧客という集計をしたいならば、Partition関数など利用されてはどうでしょう? 例:0歳から100歳までを10歳区切りでの場合 Partition([年齢],0,100, 10)

chinon
質問者

補足

ありがとうございます! 今は年齢を計算し、20歳~30歳というような抽出条件を設定したのですが、Partition関数もさっそく使ってみます。

その他の回答 (1)

  • s-holmes
  • ベストアンサー率23% (3/13)
回答No.1

年齢は下記のようにして求めています。 年齢: Fix(Format(Date(),"yyyy\.mmdd")-Format([生年月日],"yyyy\.mmdd")) 参考になるかどうか。

chinon
質問者

補足

できました! ありがとうございます!!

関連するQ&A

  • アクセス2002の年齢の表示について

    初心者です。 顧客の情報の入力に当たって生年月日を入力することで 年齢を出そうと思い、 テーブルで生年月日を そしてクエリでInt((Date()-[生年月日])/365) とすることで年齢を表示させました。 しかしながら、それだけのためにクエリを作る必要があるのでしょうか? クエリではふりがな自動表示、住所入力支援ができず、 ちぐはぐな思いをしています。 もしテーブルで年齢を表示させられたらいいなぁと思い、 質問させていただきました。 的外れな質問かもしれませんが、基本がないものですから・・・わからないところは工夫をしてやっていますが もっとシンプルにできるはずだと思います。 どうぞよろしくお願いします。

  • ACCESSのクエリの考え方

    お世話になります。 現在、アクセスを参考書片手に取り組んでいます。参考書の通りに進んでいたのですが、 クエリのことで悩んでいます。 自分なりの理解なのですが…、テーブルにあるデーターを会議などの資料のために いろんな条件で抽出したりしないかぎりは、別にクエリを作成しなくてもいい、 (要するに、「こういう条件のデーターが欲しい!」って時以外は、基本的には テーブルへのデーター入力だけでOKで、クエリは別に必要ない) という認識で正しいでしょうか? 参考書がやたらとクエリを作成させたがるために、よく分からなくなっています。 下記が、アクセスの目的ですが、自分的にはフォームは扱いやすくする必要が あると思うのですが、いまいちクエリの必要性がわからないのです。 ―――目的――― ・顧客情報・商品情報・顧客ごとの見積・問い合わせを、 社員(10名程度)で  共有したいため。(現在は各々が紙にて管理) ・データーはNASかサーバーにアクセスのデーターを入れて、各々のPCから  閲覧・書き込みができるようにする予定。 ・共有したい情報(「顧客情報」「商品情報」「見積情報」「問い合わせ情報」「クレーム情報」)は  テーブルにて作成。 ・入力・閲覧がしやすいように、フォームについては作成予定。 ・見積書などはアクセスでは作成しない。

  • ACCESS2000 で年齢を更新の仕方

    ACCESS2000 の初心者です 顧客管理の表をフォームにて作成いたしました。 その中で 生年月日 と 年齢 の 枠を作成いたしました それで 生年月日を入力すると 年齢が出てくる ように するのと 毎年の誕生日には年齢をプラス1才できるようにしたいのですが 初めて作成のため、全くわかりません。どうか宜しくお願いします。

  • ACCESS テーブル作成クエリ

    ACCESS2000で、別のデータベースAのテーブルを定期的に最新のものにするために、データベースBにテーブル作成クエリを作成します。Aを開くときにはパスワードが設定されているので、テーブル作成クエリでそのパスワードの入力を求められるため、正しく入力して実行するのですが、パスワードが正しくありませんとエラーになってしまいます。 Aのパスワードを解除して実行すればテーブルが作成できますが、パスワードを解除しないで作成する方法はないでしょうか。

  • Access 2000での年齢計算

    Access 2000にて作成しているデータベースのレポートにて、顧客の年齢を計算しています。基本的には正しい年齢が表示されるのですが、一部の方の分だけ年齢の計算結果が正しくありません。現時点で見つかっている事例は2件のみですが、正しい年齢より1年多かったり、逆に1年少なかったりと、パターンが一定しているわけでもないため、どこに問題があるのかが分かりません。確認してみるべき点について色々お教え頂ければ幸いです。 記 ◎年齢計算に使っている関数は以下の通りです。 =Trim(IIf(Format([生年月日],"mm/dd")>=Format(Now(),"mm/dd"),DateDiff("yyyy",[生年月日],Now()),DateDiff("yyyy",[生年月日],Now())-1) & "歳") 「生年月日」フィールドに西暦で生年月日が格納されており、レポートを印刷する時点での日付と誕生日を比較することで、単純に年数の引き算をしたり、更に1を引いたりしています。 以上

  • ACCESSのクエリの関数について

    ACCESSのクエリの関数について 列の標準偏差はテーブルの集計で出来ますが、レコードの標準偏差を求めたいと思います。 クエリの関数で、StDev(expr)のexprにレコードの[テーブルの名前]![フィールド名前]を 入れる時には","で続けるのか? この方法では式が作成出来ません。

  • Access クエリ検索結果

    Accessを利用して顧客管理をしています。顧客基本情報tableの顧客IDと予約表tableの顧客IDを繋げて予約日と予約者名をクエリで出しています。 ところが、検索時になぜか入力した日とは別の日に入れ替わって予約者名が出てきてしまうことがよくあります。例えばAさんを10月26日で入力したのに(別紙に記録が残っています)、10月30日の予約者としてでてきてしまうのです。なので26日の時点でAさんが予約者とは知らずに受け付けで混乱してしまいます。 予約表クエリを開くたびに、同じ日付で違う答えが返ってきてしまうこともあります。(人数が増えていったりとか) どうしたら良いでしょうか?教えてください。

  • アクセス2000でクエリを組んだのですが。。。

    こんにちわ。アクセス初心者です。まず順に追って説明します。 (1)15000件ある顧客名簿と1500件ある担当会社のテーブルをリレーションで結び、クエリを組みました。「Q_顧客名簿」と名づけました。その時点で15000件データが存在します。 (2)フォーム「Q_顧客名簿」を元にフォームを作成しました。そして氏名の曖昧検索をしたいのでまずフォームのテキストボックスに「氏名検索」と名づけて、クエリの画面に戻り「Q_顧客名簿」を元に新たなクエリを組み、「氏名」のフィールドの抽出方法に以下のような文を入れました。 『Like "*" & [forms]![集合フォーム_1]![氏名検索] & "*"』 このクエリを「Q_氏名検索」と名づけました。 (3)フォームの左端をに「Q_氏名検索」が生きるよう設定をし、「氏名検索」のテキストボックスに「再クエリ」を組んだのですが、顧客データ数が15000あるはずなのが11000まで減ってしまいました。 おそらく検索式に何かが足りないのだと思うのですが、SQLやVBAがわからないのでどうすればいいかわかりません。 アクセスの詳しい方、教えていただけませんでしょうか?よろしくお願いいたします。

  • Access2013 年月日付けの年齢表示

    Access2013で、備忘録作成の為、年月日をテーブルに短いテキスト形式で、例20001205と初めの4桁を西暦、次の2桁を月、後の2桁を日で入力してあります。 1952年11月27日生の場合、この年月日の際の年齢を自動的に表示させるクエリのフィールドへの記入式を教えて下さい。宜しくお願いします。

  • アクセスのクエリに「PHONETIC」関数はないのですか?

    アクセス2003です。 テーブル1 名前 佐藤 鈴木 木村 を クエリ1にて 名前  ふりがな 佐藤   サトウ 鈴木   スズキ 木村   キムラ というようなフィールドを作成したいのですが クエリのデザインビューのビルドで見る限りだと 「PHONETIC」関数がありませんでした。 クエリではなくテーブルに手打ちするしかないのでしょうか? よろしくお願い致します。

専門家に質問してみよう