過去ログ

                                Page     507
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼クエリを作成したときに…  kohji 04/2/7(土) 14:05
   ┣Re:クエリを作成したときに…  かみちゃん 04/2/7(土) 15:13
   ┃  ┗Re:クエリを作成したときに…  kohji 04/2/7(土) 15:31
   ┃     ┗でもやっぱりできないぃ〜  kohji 04/2/7(土) 16:22
   ┃        ┗Re:でもやっぱりできないぃ〜  かみちゃん 04/2/7(土) 16:34
   ┃           ┗すういません  kohji 04/2/7(土) 16:47
   ┃              ┗Re:すういません  かみちゃん 04/2/7(土) 18:01
   ┗クエリを作成したときに…続  kohji 04/2/7(土) 19:40
      ┗Re:クエリを作成したときに…続  かみちゃん 04/2/7(土) 20:39

 ───────────────────────────────────────
 ■題名 : クエリを作成したときに…
 ■名前 : kohji
 ■日付 : 04/2/7(土) 14:05
 -------------------------------------------------------------------------
   いつもお世話になっています

さっそく質問なのですが
(A='aaa' Or A='bbb' Or A='ccc')のような抽出条件をもたしたクエリがあり、実行すると「aaa」「bbb」「ccc」が抽出されます
「bbb」が存在しなければ当然その行は表示されません

A   B
aaa  ×××
ccc  ○○○   ← こんな感じの実行結果

でも「bbb」が存在しないときでも行を出したいのですが
いろいろ試しているのですがどうすればいいのかがわかりません

A   B
aaa  ×××
bbb  (空白)
ccc  ○○○   ← こんな感じの実行結果が欲しい

よろしくお願いします

 ───────────────────────────────────────  ■題名 : Re:クエリを作成したときに…  ■名前 : かみちゃん  ■日付 : 04/2/7(土) 15:13  -------------------------------------------------------------------------
   こんにちは。かみちゃん です。

>(A='aaa' Or A='bbb' Or A='ccc')のような抽出条件をもたしたクエリがあり、実行すると「aaa」「bbb」「ccc」が抽出されます
>「bbb」が存在しなければ当然その行は表示されません
>
>A   B
>aaa  ×××
>ccc  ○○○   ← こんな感じの実行結果
>
>でも「bbb」が存在しないときでも行を出したいのですが

抽出条件をクエリに記述していると思うのですが、そうではなくて、抽出条件用のテーブルを別に作成して、そこに抽出条件を入力します。
そして、抽出条件テーブルとデータテーブルを左外部結合クエリで結合すると、ご希望のことができると思います。
左外部結合がわからなければ、次のURLを参考にしてみてください。
http://orakumiko.hp.infoseek.co.jp/yougo/q_louter.html

 ───────────────────────────────────────  ■題名 : Re:クエリを作成したときに…  ■名前 : kohji  ■日付 : 04/2/7(土) 15:31  -------------------------------------------------------------------------
   なっるっほっど〜

その手がありましたね
ありがとうございます

また なにかあればよろしくお願いしますm(__)m

 ───────────────────────────────────────  ■題名 : でもやっぱりできないぃ〜  ■名前 : kohji  ■日付 : 04/2/7(土) 16:22  -------------------------------------------------------------------------
   抽出条件テーブルにあってデータテーブルにない行を追加できませんでした

他の方法はないですか?
SQLでそんな命令ないですよね。。。

 ───────────────────────────────────────  ■題名 : Re:でもやっぱりできないぃ〜  ■名前 : かみちゃん  ■日付 : 04/2/7(土) 16:34  -------------------------------------------------------------------------
   こんにちは。かみちゃん です。

>抽出条件テーブルにあってデータテーブルにない行を追加できませんでした

抽出条件テーブル データテーブル
フィールド1    フィールド1 フィールド2
aaa        aaa     ×××
bbb        ccc     ○○○
ccc
の場合、クエリで結合すると相変わらずこんな感じになるということですか?
クエリ1
フィールド1 フィールド2
aaa     ×××
ccc     ○○○

内部結合だとこのようになります。
内部結合は、「−」でテーブルが結合されますが、左外部結合を行うと、結合状態が「−」から「→」に変わり、
クエリ1
フィールド1 フィールド2
aaa     ×××
bbb    
ccc     ○○○
となるはずですが・・・

 ───────────────────────────────────────  ■題名 : すういません  ■名前 : kohji  ■日付 : 04/2/7(土) 16:47  -------------------------------------------------------------------------
   データテーブルはクエリでしかも計算フィールドも含まれています
それでも大丈夫ですか?

 ───────────────────────────────────────  ■題名 : Re:すういません  ■名前 : かみちゃん  ■日付 : 04/2/7(土) 18:01  -------------------------------------------------------------------------
   こんにちは。かみちゃん です。

>データテーブルはクエリでしかも計算フィールドも含まれています
>それでも大丈夫ですか?

大丈夫だと思いますよ。

抽出条件テーブル データテーブル
フィールド1    フィールド1 フィールド2
aaa        aaa     ×××
bbb        ccc     ○○○
ccc
まずはこのような状態になっていますよね?
違っていたら、教えてください。

 ───────────────────────────────────────  ■題名 : クエリを作成したときに…続  ■名前 : kohji  ■日付 : 04/2/7(土) 19:40  -------------------------------------------------------------------------
   できました ありがとうございます

もう一つ質問があります
抽出条件はAフィールドの「aaa」「bbb」「ccc」です

X   A   B
111  aaa  ×××
222  ccc  ○○○   ← こんな感じのテーブル

でも「bbb」が存在しないときでも行を出したい

X   A   B
111  aaa  ×××
111  bbb  空白
222  ccc  ○○○
222  bbb  空白    ← こんな感じにしたい

できますか?
ほんとうにすみません
よろしくお願いします

 ───────────────────────────────────────  ■題名 : Re:クエリを作成したときに…続  ■名前 : かみちゃん  ■日付 : 04/2/7(土) 20:39  -------------------------------------------------------------------------
   こんにちは。かみちゃん です。

>抽出条件はAフィールドの「aaa」「bbb」「ccc」です
>
>X   A   B
>111  aaa  ×××
>222  ccc  ○○○   ← こんな感じのテーブル
>
>でも「bbb」が存在しないときでも行を出したい

抽出条件テーブルには、次のようにデータを入力しておけばできます。
X   A 
111  aaa
111  bbb
222  ccc
222  bbb

それか、bbbを2レコード入力したくのないのであれば、
次のような抽出条件1テーブル、抽出条件2テーブル、データテーブルを用意します。
抽出条件1テーブル
 フィールド1 フィールド2
 111     1
 222     1
抽出条件2テーブル
 フィールド2 フィールド3
 1      aaa
 1      bbb
 1      ccc
データテーブル
 フィールド3 フィールド4
 aaa     ×××
 ccc     ○○○

> 222  bbb  空白    ← こんな感じにしたい

「111  ccc  空白」はいらないのでしょうか?
たぶんいると思うので、その方法で説明しました。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 507