エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
ITエンジニアの数学 2値、3値論理と(null)の話
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
ITエンジニアの数学 2値、3値論理と(null)の話
論理式の話を書くに辺り、(null)の話をして見ようと思います。 みなさんはブール代数は得意でしょうか?... 論理式の話を書くに辺り、(null)の話をして見ようと思います。 みなさんはブール代数は得意でしょうか? 真理値表を書いてやったあの「true」とか「false」とかの代数です。 プログラムを組む人、SQLを組む人は「当然」と言われるかもしれませんね。 では質問です。 SQLでデータを扱う場合、以下の真理値表を書いてみてください。 1.A ∧ B 2.A ⇒ B どうでしょう? 簡単だ、という人もたくさんいると思います。 ではもうひとつ質問。 上の例で、 A = (null) B = true の場合、結果はどうなるでしょう? ちょっと詰まる人もいるのではないでしょうか? 学校で習うブール代数は「2値論理」です。 一方、(null)を許容する現在のデータベースで用いられているのは「3値論理」です。 私が今まで「バグがある!」と言われて見てきたSQL文やプログラムには、「2値論理」が前提で書