目指せwebエンジニア就職!!!

25歳 2020年4月から未経験webエンジニア転職目指して勉強中♪本気の初心者なので少しでも学んだことが身に着くようにここをアウトプットの場にします!

2値倫理と3値倫理とSQL

 

2値論理

 

ある命題について、真か否かを真偽値で返す論理

 

論理で

命題は=Propositionと呼ばれ

正しい命題は真である=Trueと呼ばれ

正しくない命題は偽である=Falseと呼ばれる

 

すなわち2値論理では

命題の結果を、真Trueか偽Falseの2つの値で表現すること。

 

 

 

3値論理

 

2値論理の真偽値に加え、第三の値の

「不明(Unknown)」

の3つの値で表現。

 

SQLではこの3値論理が使われる。

 

 

 

NULL

 

 SQL上ではNULLという表現は一つしかないが

厳密にいうとNULLには

「未知(Unknown)」と「適用不能(Not Applicable, Inapplicable)」

と二つの種類がある。

 

 

「未知のNULL(Unknown)」とは

 

 そこになにがあるかは確かだが

現時点でなにがあるかは分からない。だが

いずれ分かる可能性があるもの

 

「適用不能のNULL(Not Applicable, Inapplicable)」とは

 

聞かれたところで適用ができない、

そもそもわかる可能性がないもの

 

 

SQLでは双方がNULLと表現される

 

 

 

3値論理におけるANDとORの優先順位

 

 

3つの真理値における優先順位です

◆ANDの場合: False>Unknown>True

◆ORの場合: True>Unknown>False

 

強いほうが弱いほうを打ち消す。