環境は、Delphi7・DB=DB2・OS=XPです。
ClientDataSetを用いて、DBGridへSQLの結果を表示しているのですが、
Order By が無視されてしまいます。
実際、DB2標準のコマンドセンターで同じSQLを実行したところ、
正常にOrder By のソートがされていまいした。
SQLエクスプローラでも正しいソート順でした。
ClientDataSetのIndexFieldNamesには、何もいれていません。
もしご存知のかたがいっらしゃいましたら、ご教授をお願いいたします。
SQLを解析したところ、最後にORDER BYをしているにも関わらず、
WITH句のSELECT文で、ORDER BYをしていました。
この無意味なORDER BYを取って実行したところ、
正常にORDER BYされました。
SQL実行環境(Delphi上のみ)により、
結果が変わってしまった理由は不明ですが、
今回の問題としては解決です。
ツイート | ![]() |