MySQLは実際にあなたをだましています。 ブール列タイプはまったくありません :
それを考慮して:
- 多くのデータベースシステムにはブール値もありません(少なくとも標準のSQLおよび列タイプでは)
- MySQLには、
0
を適用する簡単な方法がありません。 または1
BOOLEAN
で
私の結論は次のとおりです。
-
WHERE IS flag
を使用する必要があります または単にWHERE flag
=
だから 単に正しく動作しません。どちらが好みの問題かもしれません。 - どのオプションを選択しても、ベンダーに依存しないオプションはありません。たとえば、Oracleはどちらも実行しません。
編集: クロスプラットフォームが必須の場合、私はこれを選びます:
WHERE flag=0
WHERE flag<>0
私たちは皆、それを何度もやったと確信しています。