2012-01-16 111 views
0

時間が掛け合っていることがわかっていますが、私の問題を解決するために読んだ修正を得ることができません。 SQL Serverエラーが発生しました。「操作が完了する前にタイムアウト時間が経過したか、サーバーが応答していません」。ツール>オプション>デザイナー>「接続文字列のタイムアウト値を上書きする」の設定をthis投稿ごとに120秒に変更しましたが、30秒後にはまだタイムアウトします。私はビジュアルスタジオからデータベースにアクセスしています。クライアントコードではなく、直接それに取り組んでいます。私は提案を開いてよ...ここにクエリはところでです:一言で言えばSQlサーバー「タイムアウト期限が切れました。タイムアウト時間が経過しました」というエラーを修正する必要があります。

SELECT Symbol FROM tblSymbolsMain WHERE ((SELECT dbo.LatestDateInDailyPricingVolBySymbol(tblSymbolsMain.Symbol) AS Expr1) < dbo.RecentTradingDateByNumber(5))

、目標は、メインシンボルテーブルからすべての銘柄記号を返すことで日々の価格データ・ポイントを持っていないこと少なくとも5取引日間は価格表に記載されています。

いつものように事前のおかげで..

+0

このクエリは、Management Studioなどのデータベースツールから直接呼び出すとすぐに実行されますか? – DOK

+0

Management Studioでクエリを実行するとどうなりますか?クエリを完了するまでの経過時間はどのくらいですか? – HardCode

+0

@DOK、HardCode私は今実行している、我々は5分で、まだ実行して..私はより良いロジックが必要なように見えますか? – StatsViaCsh

答えて

1

コードdoesntのは、あなたが...WHERE (SELECT...) 何を持っている...正しいように見えますか?

はあなたが

SELECT MyCols FROM MyTable WHERE ID IN (...)

OR

(...)は別のIDのいくつかの並べ替えを返す選択表し

SELECT MyCols FROM MyTable WHERE ID NOT IN (...)

後ではありませんよろしいです。

もちろん、タイムアウトが発生します。その選択はカウントを返す可能性があり、WHERE 1は繰り返し実行できます...

+0

私はあなたの投稿を読んだときに同意し、私のところでもう一度最初のパスを取ったが、WHERE句は評価された各行に対して真偽値を返すべきである。その関数比較は2つの日付を比較します。私は問題はないと思うだろう... – StatsViaCsh

+0

StatsViaCsh - それはあなたのクエリがまだ間違っているブール値が含まれている場合:あなたが言う必要があります: '私はあなたが行方不明であるmyCol <(SELECT ...)あなたは何も比較していません。 – JonH

+0

Gotcha ..だから私は比較のための "選択"が必要です。あなたは正しかった、今は走っているが、変更された形で、ありがとう。 – StatsViaCsh

関連する問題