sql >> データベース >  >> RDS >> Mysql

1=0の混乱であるMysql

    これは、作業しているブール演算のタイプによって異なります。可変数のANDを追加する場合 ステートメントの場合、1 = 1など、常にtrueと評価されるステートメントを使用します。 。一方、ORで同じことをしたい場合 ステートメントの場合は、1 = 0などのfalseと評価されるステートメントを使用する必要があります。 。

    ブール変数xがあるとします。 真理値が不確定です(真または偽の可能性があります。わかりません)。ここで、x AND falseの値が見つかった場合 、falseを取得します 、xの値に関係なく は。

    一方、x OR trueを見ると 、trueを取得します 。繰り返しますが、これはxの真理値に関係ありません 。

    ステートメントでは、ハードコードされた値がクエリのロジックに影響を与えないようにする必要があります。 false OR a OR b OR c以降 論理的にはa OR b OR cと同等です 、ハードコードされたステートメントは効果がありません。それ以外の場合は、true AND a AND b AND c a AND b AND cと同等です 。



    1. 階層型MySQLクエリのヘルプが必要

    2. PostgreSQL、レシピで材料を計算するための複雑なクエリ

    3. SQLite-データベースを削除する

    4. 挿入クエリが完了するまでに時間がかかることがあるのはなぜですか?