- ベストアンサー
重複クエリ後の条件絞り込み方法:面談日が空白かつ入力済みの社員を選びたい
- Access初級者の方が、重複クエリ後の条件絞り込み方法を教えてください。
- 会社のデータベースで、面談日が空白かつ入力済みの社員を抽出したいです。
- どのようなクエリを使えば、上記の条件に合う社員を選ぶことができるでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
SELECT DISTINCT FIRST.社員番号 FROM 表 AS [FIRST], 表 AS [SECOND] WHERE FIRST.社員番号=SECOND.社員番号 And FIRST.面談日 Is Not Null And SECOND.面談日 IS Null; 修正してみました。 空白の意味をNULLにとりました。 もし、言葉通り「空白」だったら変更して下さい。 上記の文をクエリのSQLビューにコピペします。
その他の回答 (2)
選択条件が今ひとつ明快ではないのでお尋ねします 条件 1.同一社員番号で2レコードある 2.面接日が一つは空白、一つは空白ではない(二つとも空白は対象としない) でしょうか? もう一つお尋ね。SQL文は御理解済みですか?つまり#1のような回答方式でよろしいでしょうか。
お礼
ありがとうございます。 おっしゃる通り、同一社員番号でレコードが2つできる社員がいます。 今は大元のテーブルを対象に重複クエリを実行し同一社員番号が2つあるものを抽出しています。 その中には同一社員番号で面談日が2つとも空白の人も含まれてきますが、面談日が1つは空白1つは空白でない人だけを抽出したいのです。 SQL文はまだ初級者なのでほとんど理解できていません。クエリのデザインビューの条件の部分に入れればいいようなものがあればいいのですが、駄目ならSQLビューを開いて入力すればいいのでしょうか?
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
SELECT 社員番号 FROM 表 GROUP BY 社員番号 HAVING COUNT(面談日) >= 2; で面談日が2個以上有る人の社員番号がわかると思います。 勘違いしてたらすみません。
お礼
ありがとうございます。 以上の文をクエリのデザインビューで社員番号のフィールドにいれればいいのでしょうか?それともSQLビューに入れるものですか? 初級者なのでSQLビューはほとんど理解できていません(自分一人で一から作れるレベルではないです)。 あと、教えていただいた上の文を入れると同一社員番号で面談日が両方とも空白のものも出てきますか?私の説明が足りなかったのかもしれませんが、同一社員番号で面談日が一方だけ空白のものを抽出したいのです。
お礼
たびたびありがとうございます。 やってみましたら、できました! 自分でも重複クエリを工夫してやってみたところ、同じ結果になりました。 SQLに教えていただいた文をコピペして、デザインビューでどうなっているか見たら「First」「Second」というテーブルが表示されていました。あんな風にできるんですね。びっくりしました。もっと勉強しないとならないなあと思いました。 ありがとうございました。