問題タブ [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 投票する
4 に答える
584 参照

sql - 合体付きのINステートメントを使用したSQLサブクエリ

次のSELECTステートメントがあります

編集 このステートメントの前に、ユーザーの入力に従って@selectedPriv一時テーブルにデータを入力しています。ユーザー入力がない場合、テーブルには何も含まれません

最後の AND ステートメントで、privId がユーザーが入力した特権のリストと等しいすべてのデータを検索しようとしています。したがって、たとえば、ユーザーは一時テーブルに格納されている 1,2,3,4,5,6 を入力します。これから、これらの特権に関連付けられている元のテーブルからすべての行を見つける必要があります。コメント付きのINステートメントを使用すると問題が発生しますが、ユーザーはNULLを渡すことが許可されているため、COALESCE内で必要ですが、これを行うとメッセージが表示されます

サブクエリが複数の値を返しました。サブクエリが =、!=、<、<=、>、>= の後にある場合、またはサブクエリが式として使用されている場合、これは許可されません。

これがなぜなのか、私には手がかりがありません。この問題を解決するのに役立つアイデアはありますか?

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

sql - 異なるコンパレータを使用した SQL IN 演算子

そのように、各パラメーターに対して異なる種類の比較を行う IN 演算子を作成する方法が必要です。

)

説明:

  • par1 は par1answer1 または par1answer2 と同じである必要があります
  • par2 は par2answer1 または par2answer2 と同じである必要があります
  • par3 は、par3min1 と par3max1 の間、または par3min2、par3max2 の間である必要があります

@EDIT
明確でなくてすみません、私は説明があまり得意ではありませんが、私はそれに取り組んでいます!
例セット:

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

node.js - Node.js sqlite3 IN 演算子

だから私は現在Node.jsでクエリを作成しようとしています:

すべての「?」に対してパラメーターの配列を渡すことができることを知っています。記号ですが、この場合 IN 演算子を使用することは可能ですか? そうでない場合、文字列連結または準備済みステートメントを行う必要がありますか?

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

sql - サブクエリで「ORDER BY」句を使用できますか?

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

oracle - コレクションで「FOR」ループの代わりに「IN」を使用する

データの配列を取り、一連のレコードを更新するplsqlプロシージャがあります.forループでこれを行うことができます。ループなしでこれを行うには、いくつかの助けが必要です。

パッケージ仕様と本体:

私が持ちたいもの:

上記を試してみるとエラーが発生しました。助けてください。事前にどうもありがとうございました。

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

sql - コンマをアポストロフィ/一重引用符に置き換える方法は?

pgsql選択クエリでコンマをアポストロフィ/一重引用符に置き換えるにはどうすればよいですか? 私の現在のクエリは次のとおりです。

nullを返しています。
テーブル内の IDは次のtblmtrようになります2, 3,4

2only or 3orに変更すると4、正しい結果が返されます。
結果は次のようになります。district1name,district2name,district3name

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

sql - 関数oracleのIN句に値を渡す

関数内でカーソルを返す必要があります。

table_colorsは:

create or replace type table_colors as table of varchar2(20);

しかし、テストすると、同じように渡すblue, red, pink, whiteか、'blue', 'red', 'pink', 'white'常に同じエラーがスローされます

ORA-06502: PL/SQL; numeric or value error: character string buffer too small

この行でrow table_colors := table_colors(bigstring);

ここで何が間違っていますか?