Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1925 / 9994 ←次へ | 前へ→

【11350】Re:クエリ結果件数が違う
質問  pon  - 10/1/6(水) 15:56 -

引用なし
パスワード
   ▼小僧 さん:
ありがとうございます

>SQLを見る限りですが
>T単価テーブルとの左外部結合を行っているだけなので
>結果は必ずT単価テーブルのレコード数と一致しなければいけないですよね。
ですね

ご指摘を受けて下記確認してみました

仕様1-7をはずしたクエリでは
SELECT T単価.*
FROM ((T単価
  LEFT JOIN LT部位
    ON T単価.部C = LT部位.部C)
  LEFT JOIN LT単位
    ON T単価.単位C = LT単位.単位C)
  LEFT JOIN LT名
    ON T単価.区C = LT名.区C
    AND T単価.工種1C=LT名.工種1C
    AND T単価.工種2C=LT名.工種2C
    AND T単価.工種3C=LT名.工種3C;
必ず117820件となります


>クエリの中でクエリを呼び出している箇所があるので
>そちらを纏めてみたら結果はどうなりますでしょうか。
ん〜
そんなことが出来るのですか

そのまま試してみましたが
FROM 句の構文エラーです。

>>アクセス一応使えるつもりです
なんて書いてしまいましたが、SQLもたまに見るぐらいで低レベルです

SQLビューで仕様を1づつ追加して試してみました
(ご提示頂いたSQLと同じですが・・・・)


仕様を1つ左外部結合してみました
SELECT T単価.*
FROM (((T単価
  LEFT JOIN LT部位
    ON T単価.部C = LT部位.部C)
  LEFT JOIN LT単位
    ON T単価.単位C = LT単位.単位C)
  LEFT JOIN LT名
    ON T単価.区C = LT名.区C
    AND T単価.工種1C=LT名.工種1C
    AND T単価.工種2C=LT名.工種2C
    AND T単価.工種3C=LT名.工種3C)
  LEFT JOIN LT仕様
    ON T単価.工種1C=LT仕様.工種C
    AND T単価.仕様C1+1000=LT仕様.仕区C*1000+LT仕様.仕様C;
動作できましたが
レコード件数は、
117819件
117820件
とかになります

仕様を2つ左外部結合してみました
SELECT T単価.*
FROM ((((T単価
  LEFT JOIN LT部位
    ON T単価.部C = LT部位.部C)
  LEFT JOIN LT単位
    ON T単価.単位C = LT単位.単位C)
  LEFT JOIN LT名
    ON T単価.区C = LT名.区C
    AND T単価.工種1C=LT名.工種1C
    AND T単価.工種2C=LT名.工種2C
    AND T単価.工種3C=LT名.工種3C)
  LEFT JOIN LT仕様 AS T1
    ON T単価.仕様C1+1000=T1.仕区C*1000+T1.仕様C
    AND T単価.工種1C=T1.工種C)
  LEFT JOIN LT仕様 AS T2
    ON T単価.仕様C2+2000=T2.仕区C*1000+T2.仕様C
    AND T単価.工種1C=T2.工種C;
動作できました
レコード件数はやはり
117819件
117820件
とかになります

>そんなことが出来るのですか
ただ、デザインビューにすると
デザイン ビューで、連結式 T単価.仕様C1+1000=T1.仕区C*1000+T1.仕様C を表示できません。
と怒られてしまいましたが
クエリを使ったクエリよりもこちらのすっきりしてよさげな気がします
1歩前進できました ご教授ありがとうございました


117819件
117820件
ですが
よくわかりませんが、CPUのせいではないような気はしますが・・・・
ちなみに
Intel(R) Core(TM)2 Duo CPU 
E4400 @ 2.00GHz
1.99 GHz、0.99 GB RAM
で、クエリ表示後最終レコードに移行すると7秒ぐらいかかります


ふと、クエリ結果件数が毎度異なるなんて 
バグぽっい動きみたいな気もしなくは無いですが、どうなんでしょう・・・・
場合によっては
敷居が高いけど今回は SQL Server Express Edition + ADP にしようかな・・・


とりとめのない書き込みになってしまいましたが
アドバイスありましたらよろしくお願いいたします

1,518 hits

【11343】クエリ結果件数が違う pon 10/1/5(火) 14:32 質問[未読]
【11345】Re:クエリ結果件数が違う 小僧 10/1/5(火) 17:45 回答[未読]
【11350】Re:クエリ結果件数が違う pon 10/1/6(水) 15:56 質問[未読]
【11353】Re:クエリ結果件数が違う pon 10/1/6(水) 17:37 発言[未読]
【11354】Re:クエリ結果件数が違う 小僧 10/1/6(水) 17:53 回答[未読]
【11378】Re:クエリ結果件数が違う pon 10/1/13(水) 17:40 質問[未読]
【11380】Re:クエリ結果件数が違う 小僧 10/1/13(水) 18:02 回答[未読]
【11407】Re:クエリ結果件数が違う pon 10/1/21(木) 17:30 お礼[未読]

1925 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078197
(SS)C-BOARD v3.8 is Free