• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQLの結果が違う)

SQLの結果の違いについて

このQ&Aのポイント
  • SQLの結果が異なるという問題が発生しています。UNIONを使用したSELECT文で、あるデータベースでは結果が返らず、もう一方のデータベースでは意図した結果が返ります。
  • SELECT文1とSELECT文2をUNIONで結合したSQL文において、SELECT文2は結果レコード数が0ですが、SELECT文1は結果が返ります。
  • 結果が返らないデータベースと結果が返るデータベースのバージョンが異なり、結果が返らないデータベースにはDB2のパッチが当たっていない可能性があります。この問題はDB2のバグの可能性も考えられます。

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

  • ベストアンサー
  • yukion
  • ベストアンサー率42% (3/7)
回答No.3

その異常終了は大いに因果関係があると思います。エラーログから原因を判断する必要があります。 サポート契約がないのであれば以下のURLを調査するしかないと思います。 http://www-6.ibm.com/jp/software/data/developer/pdchecklist/

参考URL:
http://www-6.ibm.com/jp/software/data/developer/pd/
real_neo
質問者

お礼

調べたいんですが、サーバがお客さん所有で、派遣社員の私には調べる権限がありません。 回答ありがとうございました。

その他の回答 (2)

  • yukion
  • ベストアンサー率42% (3/7)
回答No.2

No.1です。障害関係の情報を検索してみましたが、この現象はありませんでした。 質問されている内容からは、このような結果になるのは有り得ないと思います。 もしサポート契約とかがベンダーとあれば、詳しいデータを取得して、調査依頼を出してはどうでしょうか。

real_neo
質問者

補足

今日もテスト中に発生しました。 関係あるかどうかはわかりませんが、問題のデータベースはよく異常終了します。といってもここ数日間ですが。 今日も問題のSQLを再実行して結果がレコード数0を確認した後、UNION部分からSELECT文2を外して実行したところ、異常終了しました。 データベースが壊れたりしていないかが気になります。 まあ、データベースが壊れたら、他のSQLも上手くいかないとは思いますが。

  • yukion
  • ベストアンサー率42% (3/7)
回答No.1

質問の内容を考えるためには、もう少し詳しい情報が必要です。 1.その複数のデータベースといっているのは内容がまったく同じなのか違うのか? まったく同じデータの内容でSQL文が同じであれば同じ結果になるはずです。 2.結果が返らないデータベースでは、SELECT文1を単独で実行した場合に何行かの結果が返るが、UNIONを指定した場合には返らないのであればあきらかに問題があるようです。 3.それぞれのDB2データベースのVersionは何ですか? CONNECT TO を行ったときにVersionナンバーが表示されると思いますが。

real_neo
質問者

補足

相談にのってくださり、ありがとうございます。 1.問題となっているSQLはトランザクションデータを抽出するものです。 マスタテーブル、トランザクションテーブルとも同じデータです。 2.それぞれのデータベースで、SELECT文1を単独実行した場合は、同じ結果が返ります。 SELECT文2も同じ結果になりますが、結果はレコード数0です。 3.正確なバージョンは今すぐはわかりませんが、結果が返らない方と返る方との違いは、 a.b.xxxxの部分のxxxxだけが違ったような気がします。

関連するQ&A