動的比較には SQL の WHERE 句で CASE ステートメントを使用します
SQL の CASE ステートメントは、一連の WHEN 句を評価し、対応する値を返す条件式を提供します。この機能を WHERE 句で使用すると、特定の条件に基づいて動的比較を実行できます。
期待される結果を達成するには、CASE ステートメントを次のように構築する必要があります:
<code class="language-sql">WHERE @locationID = CASE @locationType WHEN 'location' THEN account_location WHEN 'area' THEN xxx_location_area WHEN 'division' THEN xxx_location_division END</code>
上記の構文により、WHERE 句が @locationType の値に基づいてデータをフィルターすることが保証されます。 @locationType が 'location' の場合、WHERE 句の式は @locationID = account_location と評価されます。 @locationType が 'area' の場合、WHERE 句は @locationID = xxx_location_area などと評価されます。
このように CASE ステートメントを使用すると、WHERE 句の各条件を明示的にチェックする必要がなくなり、指定された @locationType 値に基づいて適切な比較が実行されるようになります。
以上がSQL の CASE ステートメントはどのようにして WHERE 句での動的な比較を可能にしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。