0

MySQL クエリを否定する最善の方法は何ですか。つまり、どのような条件であっても、強制的にレコードを返さないようにします。

うまくいくと思われるものを使用AND 1=0しましたが、このような標準があるかどうか知りたいです。

4

4 に答える 4

1

false条件を追加するだけです

select * from your_table where false
于 2012-04-23T11:33:35.160 に答える
1

常に評価されるインライン述語を追加することFALSEは、私にとって最良の方法のようです。「インライン」とは、バインド変数を使用しないことを意味します。または、使用することもできます

LIMIT 0

これには、より表現力があるという利点がありますが、クエリ オプティマイザーの実装によっては、遅くなる可能性があります (未確認)。

于 2012-04-23T11:34:29.827 に答える
0

も使用できますAND false。2 つのオプションにパフォーマンスの違いがあるかどうかはわかりません。

于 2012-04-23T11:33:57.603 に答える
0

定数式「1 = 0」は、実行前に「false」に評価されます。これは、実行前に「0」の単なるエイリアスであるため、最終結果を提供することでMySQLが式を評価するのを防ぐと、より高速で読みやすくなります。

AND FALSE
于 2012-04-23T12:01:47.520 に答える