ホームページ > データベース > mysql チュートリアル > 以下に、さまざまなレベルの具体性を備えたいくつかのタイトル オプションを示します。 **直接的かつ簡潔:** * **SQL の IN 句に変数を渡す方法** * **IN 句による動的フィルタリング: FI の使用

以下に、さまざまなレベルの具体性を備えたいくつかのタイトル オプションを示します。 **直接的かつ簡潔:** * **SQL の IN 句に変数を渡す方法** * **IN 句による動的フィルタリング: FI の使用

Mary-Kate Olsen
リリース: 2024-10-25 21:28:28
オリジナル
802 人が閲覧しました

Here are a few title options, playing with different levels of specificity:

**Direct & Concise:**

* **How to Pass Variables to IN Clauses in SQL**
* **Dynamic Filtering with IN Clauses: Using FIND_IN_SET**

**Question-Focused:**

* **Can You Pass Variab

IN 句への変数の受け渡し

背景:

SQL では、IN 句を使用して列の値を比較できます。一連の値に。特定のシナリオでは、値のリストを含む変数を IN 句に動的に渡したい場合があります。

問題:

SELECT ステートメントを含む SP があります。 IN 句を使用して、リストの特定の値に基づいて結果をフィルタリングします。ただし、値のリストを個別に指定するのではなく、単一の変数として渡す必要があります。

解決策:

変数を IN 句に渡すには、次のことを考慮してください。 FIND_IN_SET 関数を使用します。この関数は 2 つのパラメータを取ります:

  1. 比較する列 (この場合は product_type)
  2. 値のカンマ区切りリストを含む文字列 (例: 'AA, BB,CC')

変更されたクエリ:

SELECT product_id, product_price
FROM product
WHERE FIND_IN_SET(product_type, param);
ログイン後にコピー

パラメータ値の受け渡し:

呼び出し時SP に値のコンマ区切りリストを「param」変数の値として渡します。例:

EXEC SP @param = 'AA,BB,CC'
ログイン後にコピー

説明:

FIND_IN_SET 関数は、指定された列値がカンマ区切りリストで見つかった場合は 1 を返し、それ以外の場合は 0 を返します。この関数を使用すると、「param」変数に渡された値に基づいて結果を動的にフィルタリングできます。

以上が以下に、さまざまなレベルの具体性を備えたいくつかのタイトル オプションを示します。 **直接的かつ簡潔:** * **SQL の IN 句に変数を渡す方法** * **IN 句による動的フィルタリング: FI の使用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート