• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Distinct使用時に0除算エラーが起こる)

Distinct使用時に0除算エラーが発生する

このQ&Aのポイント
  • 現在、VB6とアクセス97で構築されたシステムのメンテナンスを行なっています。下記SQLの実行時に0で除算しましたのエラーが出ます。
  • アクセス内で"SELECT DISTINCT NO FROM 指示書"というクエリを作成し実行しておくとエラーが出ずに正常に動作します。
  • 解決方法が見つからず、質問しました。ご教授よろしくお願いします。

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

  • ベストアンサー
回答No.2

Access97でサブクエリを使うと、特定の条件下で、メモリぶっ壊して変なエラー吐いて止まる事があるので、サブクエリは使わないように。 つまり「メモリぶっ壊して暴走して、変なエラーで止まってる」のですよ。 なので >SELECT DISTINCT NO FROM 指示書"というクエリを作成し 作成したクエリに対してクエリをかけるとか、色々と小細工が必要になります。 例えば、 SELECT DISTINCT IIF(NO="0",9999999,NO) AS NNO,NO FROM 指示書 を「クエリ1」として保存しておいて SELECT NO FROM クエリ1 ORDER BY NNO と言うクエリを発行するとか。 ともかく「select * from [ SELECT ~~ ]は使っちゃいけない」ので注意すべし。 あと、VBコードを書く時も、ある特定の条件下で「VBのコンパイラが実行時エラーを吐いて、何も出来なくなる」ので注意。

1ryoryoryo1
質問者

お礼

ありがとうございました。解決しました。

その他の回答 (1)

回答No.1

そのSQLでは、0除算をやろうと思ってもできないと思いますが。 割り算ないし。

1ryoryoryo1
質問者

補足

そうなんです。自分もそう思うんですが、0除算のエラーを返すんですよ。エラーに成るSQLでクエリーを作成実行するとアクセスが死にます。

関連するQ&A