SQLでは、BETWEENステートメントはBETWEEN最小AND最高の形式である必要がありますか?
-
06-07-2019 - |
質問
たとえば、次の場合:
SELECT * FROM Users WHERE UserId BETWEEN 100 AND 1
結果はどうなりますか
編集:申し訳ありませんが、そのとおりです。指定する必要があります。返される行の正確な数を知りたくありませんでした。1〜100の行を返すのか、または min(UserId)
の行を返すのかを知りたいだけでした。 1および100から max(UserId)
に。
解決
a BETWEEN b AND c
の略記
b <= a and a <= c
したがって、100と1の間は何にも一致しません。
他のヒント
これはおそらくRDBMSに依存しますが、なぜ試してみませんか? MySQLでは、BETWEEN 100 AND 1クエリから行を取得しませんが、BETWEEN 1および100を要求することから行を取得します。
所属していません StackOverflow