問題タブ [in-clause]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
5574 参照

sql-server - IN() 句のサブクエリが原因でエラーが発生しました

私は SQL Server 2005 を使用していますが、エラーが発生するはずがないと確信しています。

このMSDN リンクの例 # B に従っています 。

私のストアドプロシージャコードは次のとおりです。ご要望があれば、この投稿のために簡略化できます。

サブクエリからの結果セットと、サブクエリの結果が比較される strSearchTypeCode の間にデータ型の不一致がないことを確認しました。

これがうまくいかない理由はわかりません。手がかりがあれば、私に知らせてください。

0 投票する
31 に答える
352190 参照

java - PreparedStatement IN 節の代替案は?

INのインスタンスで SQL 句を使用するための最善の回避策は何ですかjava.sql.PreparedStatement。これは、SQL インジェクション攻撃のセキュリティ上の問題により、複数の値に対してサポートされていません: 1 つの?プレースホルダーは、値のリストではなく 1 つの値を表します。

次の SQL ステートメントを検討してください。

Usingは、本質的には、そもそも preparedStatement.setString( 1, "'A', 'B', 'C'" );使用する理由の回避策として機能しない試みです。?

どのような回避策がありますか?

0 投票する
5 に答える
12956 参照

reporting-services - SqlServer Reporting Servicesクエリで「like」と「in」を組み合わせますか?

以下は動作しませんが、このようなものが私が探しているものです。

SSRSは、パラメーターの前にある@演算子を使用して「in」をシミュレートしますが、文字列を文字列のリストに一致させる方法が見つかりません。

0 投票する
11 に答える
346943 参照

oracle - 1000 を超える値を Oracle の IN 句に入れる方法

静的な IN 句で 1000 項目という Oracle 10g の制限を回避する方法はありますか? IN 句で使用したい多くの ID のカンマ区切りのリストがあります。このリストが 1000 項目を超える場合があり、その時点で Oracle がエラーをスローします。クエリはこれに似ています...

0 投票する
3 に答える
1032 参照

sql - SELECT * FROM table WHERE x IN (...数百の整数...)

テーブルには約 800 万行あります。X には一意でないインデックスがあります。

インデックスを表示すると、「seq_in_index」が 1、照合 A、カーディナリティ 7850780、sub_part NULL、packed NULL、index_type BTREE のキー名 X に一意でないインデックスがテーブルにあることがわかります。

それでも、このクエリの実行には 5 秒かかる場合があります。int のリストは別のシステムからのものであり、それらをテーブルに格納することは許可されていません。なぜなら、それらはソーシャル ネットワーク上の友情を表しているからです。

大規模な IN ステートメントよりも高速な方法はありますか?

0 投票する
9 に答える
215911 参照

.net - Linq to Entities - SQL "IN" 句

T-SQL では、次のようなクエリを作成できます。

LINQ to Entities クエリでそれをどのように複製しますか? それは可能ですか?

0 投票する
5 に答える
78414 参照

sql - 「in句」内のMySQLアイテム数

ユーザーを定義するための3つのテーブルがあります。

アプリケーション内の他のユーザーに特定のアクセス権を持つ中間層ユーザーを作成したいと思います。ログインしたユーザーがアクセスできるユーザーを判別するために、次のようなサブクエリを使用しています。

現在、サブクエリ文字列を変数に格納し、ユーザーのリストを取得する必要があるたびに、それを外部クエリに動的に挿入しています。これを行った後、「実際のsの文字列を格納する方がよい」と思いましたuser_id

したがって、これを変数に格納する代わりに...

...実際にクエリを実行して結果を次のように保存します...

次に、ログインしているユーザーがアクセスできるユーザーを取得する必要がある場合は、次の方法で実行できます。

そして最後に質問:

MySQL INCLAUSEではいくつのアイテムを使用できますか?サブSQLステートメントの代わりに実際のIDを保存することは、毎回その外部クエリを実行するために高速である必要がありますよね?

0 投票する
2 に答える
2756 参照

mysql - 大きな IN() 句または派生テーブルの結合を使用した MySQL クエリの最適化

ある企業の関係者に問い合わせる必要があるとしましょう。行われたすべてのトランザクションに関するデータを含む「トランザクション」テーブルがあります。

アソシエイトについてこのテーブルをクエリするのはかなり簡単ですが、ひねりがあります。トランザクション レコードは従業員ごとに 1 回登録されるため、注文ごとに 1 つの企業に対して複数のレコードが存在する場合があります。

たとえば、企業 1 の従業員 A と B の両方が企業 2 への掃除機の販売に関与していた場合、"transactions" テーブルには 2 つのレコードが存在します。従業員ごとに 1 つ、企業 1 には両方。ただし、これは結果に影響を与えてはなりません。企業 1 からの取引は、関与した従業員の数に関係なく、1 つとして扱われなければなりません。

簡単だと思いました。次のように、派生テーブルで結合を作成します。

クエリは、企業 1 との取引に関与した企業のリストを返します。これはまさに私が必要としているものですが、MySQL は、corporationID インデックスを使用して派生テーブルを決定できないため、非常に遅くなります。これは、MySQL のすべてのサブクエリ/派生テーブルに当てはまることを理解しています。

また、orderID のコレクションを個別にクエリし、途方もなく大きな IN() 句 (通常は 100 000 以上の ID) を使用しようとしましたが、MySQL には、途方もなく大きな IN() 句でインデックスを使用する際にも問題があることが判明しました。その結果、クエリ時間は改善されません。

他に利用可能なオプションはありますか、それとも両方とも使い果たしましたか?

0 投票する
2 に答える
1275 参照

c# - where句のIN演算子

これは問題なく機能し、上記のクエリで IN Opeartor を使用したいと考えています。

EventOrganizer に EventID があり、EventOrganizer コレクションに存在するイベント ID のみを選択したい

EventID に別の変数変数があります

このようなもの

どこ

どうすればこれを達成できますか?

私はあなたの助けに感謝します

0 投票する
3 に答える
1857 参照

sql - AND 、JOIN を使用した複数の列の IN 句

次のクエリのうち、正しいものはどれですか