問題タブ [sql-in]

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 投票する
1 に答える
53 参照

sql - SQLのIN句内に存在しない要素を知る

こんな問い合わせが来ました

要素が見つからない場合、dbms がこの要素のすべてのフィールドを null で返す方法があるかどうかを知りたい

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

sql - varchar フィールドで SqlParameter を使用する Sql "IN" 演算子

INで演算子SqlParameterを使用する方法が見つかりませんでした。以下のパラメータをvarchar確認してください。@Mailbox

これらの文字列を試しましたが、クエリが機能しません。

私もクエリMailbox IN('@Mailbox')
を変更してみましたstring mailbox = "abc@abc.com,def@def.com"

助言がありますか?ありがとう

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

sql - SQL IN - テーブル列内の変数?

次のように、変数リスト内のテーブル列の値を確認する方法を知っています。

しかし、where 句を逆にするにはどうすればよいでしょうか。私はこれを試しましたが、うまくいきませんでした:

次に、列 d に格納されたリスト内で値 c を持つ一致を探します。

例えば。

リスト内に値が存在する場合、合計 3 つの一致があるため、レコード数は 3 になります。ただし、このクエリを実行しても機能しません。

多くの人が以前にこの小さな問題に出くわし、解決策を知っていると思います。どんな助けでも大歓迎です!

0 投票する
1 に答える
424 参照

php - 配列が空の場合の SQL IN 演算子のエラー

SQL IN OPERATOR


SQL ステートメントで配列を操作するため、IN 演算子を使用します。

例えば:

しかし、私のコードでは、GET または POST 配列の値を使用しています。しかし、配列が空の場合、値がないため、SQL ステートメントは機能しません。if ステートメントを使用せずにこれを解決し、何千もの SQL ステートメントのリストを作成するにはどうすればよいですか。

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

sql - SQL を使用して、カンマ区切りのリストを IN コマンドで使用できるように変換するにはどうすればよいですか?

現在、user_type 列を持つテーブルがあり、ユーザーがその user_type に一致する場合にのみ行を表示します。データを複製したり、別のテーブルを作成したりせずに、複数の user_types を設定できるようにしたいと考えています。列を int から varchar に変換して、ユーザー タイプ ID のコンマ区切りのリストにすることができると考えました。

これまでのところ、うまく機能しています。それは、ユーザーに表示する必要があるかどうかを確認するときにそれを具体的に使用できるため、事前に user_type が何であるかを知っている限りです。

値でテーブルを結合しようとすると、問題が発生します。私が使ってみたときIN

私はエラーを受け取ります:それで、私は上記で使用していた方法Conversion failed when converting the varchar value '50,40,30' to data type int.に戻ることにしました:LIKE

これは、1 つのユーザー タイプ値のみを持つ結果のみを返します。INコマンドで使用するカンマ区切りのリストを変換する方法はありますか? または、動的なLIKE引数を作成する方法はありますか?

0 投票する
4 に答える
7503 参照

sql - コンマ区切りの値を持つ LIKE 条件

これはばかげているように思えるかもしれませんが、私はプロジェクト用の個別のテーブルがない古いシステムで作業しています。このようなテーブルがあります。

ここで、上の表から EmpID を選択します。ここで、ProjectName は casio または calc のいずれかです。また、 のような複数選択用のユーザー入力がありますcasio, calc。ユーザーが入力した場合、casio, calcそれが見つかるはずであることを意味しますProjectName LIKE '%casio%' OR '%calc%'

どうすればこれが可能になるのか、私にはまったくわかりません。

SQL LIKE を IN で検索しましたが、解決策が見つかりませんでした。どうすればこれを達成できるか考えている人はいますか? または、使用する他のアプローチはありますか?私はこのフィドルでこれを試しています。

0 投票する
1 に答える
217 参照

sql - 実行に永遠にかかるSQLクエリ

以下は、実行しようとしているクエリであり、実行に時間がかかります。

でクエリだけを実行しようとすると、結果が (522,470,419,417,553,582,305,361) として簡単に返されます

また、ブロック内のクエリを内部クエリの結果 (522,470,419,417,553,582,305,361) に置き換えて、完全なクエリを直接実行しようとすると、

正常に動作しています。

私はこれに慣れていないので、何が起こっているのかわかりません。これで私を助けてください。

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

mysql - MySql NOT IN が空のセットを返さない

NOT IN サブクエリを使用して、tbl_jobs テーブルにリストされているジョブが tbl_delivery_items テーブルの配送アイテムに割り当てられていない場所を選択しようとすると、現在問題が発生しています。

サブクエリは、supplier_job_job_id 1 を返す必要があります (別のクエリとして実行すると返されます)。ID が 1 のジョブは NOT IN で除外されます。空のセットを期待していたときの job_id は 1 でした。クエリを生成する codeigniter コードは次のとおりです。

生成されるクエリは次のとおりです。

そして、ここにデータがあります:

tbl_supplier_jobs

tbl_jobs

tbl_delivery_items

何か案は?