MySQL SELECT クエリの IF ステートメント
MySQL SELECT クエリで IF ステートメントを使用しようとする場合は、次の制限を理解することが重要です。 MySQL の IF ステートメント。
MySQL では、IF/THEN/ELSE 構造はストアド プロシージャおよびストアド関数内でのみ有効です。したがって、WHERE 句で IF/THEN/ELSE ステートメントが使用されているため、指定されたクエリは正しく実行されません。
SELECT クエリの条件ステートメントを処理するには、IF() 関数を使用できます。ただし、その機能は IF/THEN/ELSE 構造とは異なります。 IF() 関数は条件を評価し、true の場合は指定された値を返し、false の場合は別の値を返します。これは主に、特定の条件に基づいてデータを動的に選択するために SELECT 句で使用されます。例:
SELECT IF(JQ.COURSE_ID=0, 'Some Result If True', 'Some Result If False'), OTHER_COLUMNS FROM ... WHERE ...
ただし、クエリ例のように、IF() 関数を使用して WHERE 句のフローを制御することはできません。目的の機能を実現するには、条件を評価するために複数のネストされた WHERE 句または CASE ステートメントを使用するようにクエリを再構築することを検討してください。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3