![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
Access2003で、町内会のデータベースを作っています。
各世帯を1レコードとし、家族名と生年月日をそれぞれフィールドにしています。
(例:家族1,家族1の生年月日、家族2、家族2の生年月日・・・)
子ども会の対象者を生年月日をもとにクエリで抽出しようとしています。
家族構成によって、家族1、家族2などの各フィールドに対象者が混ざっているため、クエリの「または」欄を使い、各生年月日フィールドの抽出条件に「>#2002/04/01#」と入力したところ、家族1は非対象者でも、家族2が対象者の場合、家族1の名前が抽出データに入ってしまい困っています。
(世帯によっては家族1に対象者がいるため表示になっているからで当然すよね…)
家族1、家族2の各フィールドの純粋に対象者のみ抽出するには、どのような条件式を入力すればいいでしょうか?
夏休みのイベント案内のため、早急にやらねばならず本当に困っています。
お知恵を拝借いたしたく、どうかお願いいたします。
No.3ベストアンサー
- 回答日時:
No.1の方が言われている通り、本当はテーブルの修正をお勧めするところ
なのですが・・・現状のテーブルで対応する場合は、「ユニオンクエリ」を
使用します。
但し、ユニオンクエリは
・デザインビューで作成・編集することはできない
・データは表示専用になり、クエリ上からの修正はできない
ので、ご注意下さい。
作成方法は以下の通り:
1)新規クエリをデザインビューで開く
2)『テーブルの表示』ダイアログは、特に追加はせずにそのまま閉じる
3)メニューで「表示(V)→SQL ビュー(Q)」を選択する
4)表示されている「SELECT;」を削除した上で、以下のようなSQL文を記述
(「氏名1」等が記録されているテーブル名が「世帯一覧」の場合):
※「氏名3」等がある場合は、「氏名2」と同様に「Union ~ Between ~ And ~」
という行を追加します。なお、「;」は一番最後の行だけにつけます。
Select [氏名1] As 該当者 From [世帯一覧] Where [生年月日1] Between #2003/02/01#
Union Select [氏名2] From [世帯一覧] Where [生年月日2] Between #2003/02/01#;
5)クエリを保存して閉じる
・・・以上です。
なお、
・「As 該当者」は、該当した氏名1・氏名2を表示する際の名前の指定
・フィールド名(氏名1など)やテーブル名以外は、必ず半角で入力する必要あり
です。
DexMachinaさま
ユニオンクエリは初めて知りました。
手順まで詳しくお教えいただきありがとうございます。
やってみましたら、欲しかったデータのリストアップができました!
後々のことを考えると、やはりテーブルは要素ごとに細かく分けて、リレーションシップするのがいいんですね。
本当にありがとうございました!!
No.2
- 回答日時:
例を挙げてないので、質問のしたいことがはっきりしないが
例データ
始めの2フィールドが家族1その後が家族2のデータとする。
ID氏名1生年月日1氏名2生年月日2
1吉田 一郎2001/02/03吉田 健二2003/01/05
2鈴木 太郎2005/01/02鈴木 純一2003/02/01
3田中 清2003/02/02田中 惠子2005/03/05
4木村 浩二2002/03/02下村 明2004/03/04
クエリのデザイングリッド
生年月日1
Between #2003/02/01# And #2003/02/28#
生年月日2
Between #2003/02/01# And #2003/02/28#
ただし行をずらして「または」の行へ入れる。
結果
ID氏名1生年月日1氏名2生年月日2
2鈴木 太郎2005/01/02鈴木 純一2003/02/01
3田中 清2003/02/02田中 惠子2005/03/05
生年月日1か生年月日2が2003年2月中なら抽出。
ーーー
質問はこれではないと思うが、(質問者が、質問と望む結果を、質問に挙げないからだ)ACCESSのクエリ(背後にSQLあり
では
鈴木 純一 ・・・
田中 清 ・・・
のように出すのは無理でしょう。
レコード処理をVBAでやれば造作も無いが。
ーー
あるいはAND条件の行ずらしをしてない(初心者的なこと)からでは。
この回答への補足
imogasiさま
早速のご教示ありがとうございます。
例示がなく失礼いたしました。
うまくいかない入力状態は次のとおりです。
[家族が2人の場合]
ID,氏名1,生年月日1,氏名2,生年月日2
1 山田太郎 1998/02/05 山田花子 2005/11/12
2 上田憲一 1996/01/01 上田順子 1997/12/13
3 山本二郎 2005/05/05 山本三郎 2006/07/08
フィールドのデザイングリッド
※行をずらして「または」の行に入力しています。
生年月日1の欄
>#2002/04/01#
生年月日2の欄
「>#2002/04/01#」
その結果の表示データ
1 山田太郎 1998/02/05 山田花子 2005/11/12
3 山本二郎 2005/05/05 山本三郎 2006/07/08
ID3は2名とも条件に合致するので問題ないのですが、ID1のようにどちらかが合致すると、対象外のもう1名も表示されてしまいます。
やはりクエリの条件式ではムリなのでしょうか…
No.1
- 回答日時:
たぶんデータベースを再設計したほうが手っ取り早いかと。
例えば、世帯テーブル(THousehold)と家族構成テーブル(TFamilyStructure)に分割して、
元テーブル(家族1,生年月日1,世帯名)→TFamilyStructure(家族,生年月日,世帯名)
元テーブル(家族2,生年月日2,世帯名)→TFamilyStructure(家族,生年月日,世帯名)
――みたいに変形すれば、抽出しやすくなります。
この回答への補足
osamyさま早速ありがとうございます。
実はすでに1000世帯分ほどのレコードが登録済みで、いろいろな抽出やレポート作成に活用しているデータベースなので、このテーブルをどうしてもそのまま使いたいのです。
クエリで何とかできればありがたいのですが…
osamyさま
クエリにフィールドを新設することで解決することができました。
でも家族の転居など今後のデータ更新作業を考えると、世帯テーブルと家族構成テーブルを分けるほうがいいかもと考えています。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessクエリで年月フィールドを年のみで抽出する方法について 2 2022/08/29 18:10
- 遊園地・テーマパーク 10月11日から始まったUSJのイベント割スタジオ・パスはワクチン3回目の接種証明書を家族のうち1人 1 2022/10/11 22:35
- 政治 立民案で被害者救済を本当にできるのだろうか? 立民の限界を感じる。 特定財産損害誘導行為による被害の 3 2022/11/05 21:20
- 医療保険 簡潔は限界でしょうか? 2 2022/06/12 07:19
- Access(アクセス) accessの日付フィールドから前年度だけを取り出したい 3 2022/04/13 23:13
- 福祉 NHKも一応公共放送なので受信料に障害者割引があります。 でも、なぜ障害者が「世帯主」になってなおか 3 2023/03/23 15:53
- 会社・職場 少子化やパワハラ、いじめの原因は労働基準法79 1 2023/04/06 04:36
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- クレジットカード 楽天カードのキャンペーンについて 3 2022/07/10 22:22
- ポイントサービス・マイル マイナポイントを自分の家族の分を自分が受け取るには自分のスマホに電子決済サービスのアプリを新規にダウ 1 2022/12/03 09:31
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
”ご生年月日”って正しい言葉遣...
-
Accessというソフトで、生年月...
-
「生年月日: 年 月 日...
-
アクセスでレポートに和暦を表...
-
エクセル2000。 名簿の生年月...
-
存命の対義語、「亡くなる」と...
-
免許証のコピーをしたのですが...
-
Accessクエリ年度末年齢をおし...
-
エクセルVBA、年齢計算について...
-
Accessの抽出条件がうまく作れ...
-
タロットで相手の気持ちが分か...
-
九星気学でノイローゼになりそ...
-
あの人から連絡が来る音楽って...
-
四柱推命 七冲について
-
タロット占いで悪い結果が出た...
-
四柱推命…息子の結果が悪いみた...
-
木村藤子さんに飯島愛さんの死...
-
親友(男)のペニスをフェラする...
-
伏運ってどんな運の事を言うの...
-
霊視で寿命を知ってしまいました
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
”ご生年月日”って正しい言葉遣...
-
「生年月日: 年 月 日...
-
Googleアカウントの年齢 18才の...
-
エクセル2000。 名簿の生年月...
-
免許証のコピーをしたのですが...
-
斉藤さんの生年月日を間違えて...
-
派遣先に会社のPCを使うにあた...
-
Accessというソフトで、生年月...
-
存命の対義語、「亡くなる」と...
-
Accessクエリ年度末年齢をおし...
-
無料の占いサイトに関して
-
アクセスでレポートに和暦を表...
-
アクセスで和暦から6月3日現...
-
メルカリで間違えた生年月日を...
-
Accessでの年度末の年齢表示に...
-
エクセル ダブりカウント ダ...
-
映画館に明日行くのに学生証が…
-
Accessで教えてください。
-
四柱推命と生年月日
-
トモダチコレクション
おすすめ情報