1

説明できない奇妙なエラーが発生しました。基本的に、Excel を使用して SQL データベースにクエリを実行していますが、データベース内の非常に特定の順序になると、存在しないデータがポップアップ表示されます。

この順序に関する簡単なクエリを次に示します。

select * from OR200100 where OR200100.OR20001='0000793605'

これがEXCELでの出力です ここに画像の説明を入力

そして、これはSQLでの同じ出力です ここに画像の説明を入力

ここで何が起きてるの?同じクエリが 2 つの異なる結果を生成する可能性があるのはなぜですか?

4

3 に答える 3

1

では、SQL Server です。これは重要です。SQL 製品が異なれば、特異性や制御も大きく異なる可能性があるからです。

次にチェックする項目は次のとおりです。

  1. OR200100テーブルですか、それともビューですか? ビューの場合は、コードを投稿してください。

  2. Excel と SSMS の両方で同じログイン/アカウントを使用していますか?

  3. 同じサーバーとデータベースに接続しています? SSMS は接続先を通知しますが、Excel などのクライアント アプリは通知しません。この種の問題は、アプリが Dev または QA バージョンのデータベースに接続していることが原因で発生することがよくありますこれが発生する可能性のあるさまざまな方法については、こちらを参照してください。

于 2013-04-26T15:06:15.050 に答える
1

可能であればデータベースに対して SQL Server プロファイラーを実行し、出力を ssms で実行している SQL クエリと比較します。

于 2013-04-26T15:04:26.993 に答える
0

だから私は非常によく似た問題を抱えていました.私のクエリは週番号でグループ化していました. 私が見つけたのは、クエリの1つがdatefirst 5を設定していたのに対し、もう1つは設定していないことでした。ここで重要なことは、ssms クエリで SET 操作を使用している場合、これらが Excel クエリ文字列の操作と同じであることを確認することだと思います。

于 2016-05-13T15:02:42.947 に答える