parser_precedence.result
来自「视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.」· RESULT 代码 · 共 748 行 · 第 1/2 页
RESULT
748 行
drop table if exists t1_30237_bool;create table t1_30237_bool(A boolean, B boolean, C boolean);insert into t1_30237_bool values(FALSE, FALSE, FALSE),(FALSE, FALSE, NULL),(FALSE, FALSE, TRUE),(FALSE, NULL, FALSE),(FALSE, NULL, NULL),(FALSE, NULL, TRUE),(FALSE, TRUE, FALSE),(FALSE, TRUE, NULL),(FALSE, TRUE, TRUE),(NULL, FALSE, FALSE),(NULL, FALSE, NULL),(NULL, FALSE, TRUE),(NULL, NULL, FALSE),(NULL, NULL, NULL),(NULL, NULL, TRUE),(NULL, TRUE, FALSE),(NULL, TRUE, NULL),(NULL, TRUE, TRUE),(TRUE, FALSE, FALSE),(TRUE, FALSE, NULL),(TRUE, FALSE, TRUE),(TRUE, NULL, FALSE),(TRUE, NULL, NULL),(TRUE, NULL, TRUE),(TRUE, TRUE, FALSE),(TRUE, TRUE, NULL),(TRUE, TRUE, TRUE) ;Testing OR, XOR, ANDselect A, B, A OR B, A XOR B, A AND Bfrom t1_30237_bool where C is null order by A, B;A B A OR B A XOR B A AND BNULL NULL NULL NULL NULLNULL 0 NULL NULL 0NULL 1 1 NULL NULL0 NULL NULL NULL 00 0 0 0 00 1 1 1 01 NULL 1 NULL NULL1 0 1 1 01 1 1 0 1Testing that OR is associative select A, B, C, (A OR B) OR C, A OR (B OR C), A OR B OR Cfrom t1_30237_bool order by A, B, C;A B C (A OR B) OR C A OR (B OR C) A OR B OR CNULL NULL NULL NULL NULL NULLNULL NULL 0 NULL NULL NULLNULL NULL 1 1 1 1NULL 0 NULL NULL NULL NULLNULL 0 0 NULL NULL NULLNULL 0 1 1 1 1NULL 1 NULL 1 1 1NULL 1 0 1 1 1NULL 1 1 1 1 10 NULL NULL NULL NULL NULL0 NULL 0 NULL NULL NULL0 NULL 1 1 1 10 0 NULL NULL NULL NULL0 0 0 0 0 00 0 1 1 1 10 1 NULL 1 1 10 1 0 1 1 10 1 1 1 1 11 NULL NULL 1 1 11 NULL 0 1 1 11 NULL 1 1 1 11 0 NULL 1 1 11 0 0 1 1 11 0 1 1 1 11 1 NULL 1 1 11 1 0 1 1 11 1 1 1 1 1select count(*) from t1_30237_boolwhere ((A OR B) OR C) != (A OR (B OR C));count(*)0Testing that XOR is associative select A, B, C, (A XOR B) XOR C, A XOR (B XOR C), A XOR B XOR Cfrom t1_30237_bool order by A, B, C;A B C (A XOR B) XOR C A XOR (B XOR C) A XOR B XOR CNULL NULL NULL NULL NULL NULLNULL NULL 0 NULL NULL NULLNULL NULL 1 NULL NULL NULLNULL 0 NULL NULL NULL NULLNULL 0 0 NULL NULL NULLNULL 0 1 NULL NULL NULLNULL 1 NULL NULL NULL NULLNULL 1 0 NULL NULL NULLNULL 1 1 NULL NULL NULL0 NULL NULL NULL NULL NULL0 NULL 0 NULL NULL NULL0 NULL 1 NULL NULL NULL0 0 NULL NULL NULL NULL0 0 0 0 0 00 0 1 1 1 10 1 NULL NULL NULL NULL0 1 0 1 1 10 1 1 0 0 01 NULL NULL NULL NULL NULL1 NULL 0 NULL NULL NULL1 NULL 1 NULL NULL NULL1 0 NULL NULL NULL NULL1 0 0 1 1 11 0 1 0 0 01 1 NULL NULL NULL NULL1 1 0 0 0 01 1 1 1 1 1select count(*) from t1_30237_boolwhere ((A XOR B) XOR C) != (A XOR (B XOR C));count(*)0Testing that AND is associative select A, B, C, (A AND B) AND C, A AND (B AND C), A AND B AND Cfrom t1_30237_bool order by A, B, C;A B C (A AND B) AND C A AND (B AND C) A AND B AND CNULL NULL NULL NULL NULL NULLNULL NULL 0 0 0 0NULL NULL 1 NULL NULL NULLNULL 0 NULL 0 0 0NULL 0 0 0 0 0NULL 0 1 0 0 0NULL 1 NULL NULL NULL NULLNULL 1 0 0 0 0NULL 1 1 NULL NULL NULL0 NULL NULL 0 0 00 NULL 0 0 0 00 NULL 1 0 0 00 0 NULL 0 0 00 0 0 0 0 00 0 1 0 0 00 1 NULL 0 0 00 1 0 0 0 00 1 1 0 0 01 NULL NULL NULL NULL NULL1 NULL 0 0 0 01 NULL 1 NULL NULL NULL1 0 NULL 0 0 01 0 0 0 0 01 0 1 0 0 01 1 NULL NULL NULL NULL1 1 0 0 0 01 1 1 1 1 1select count(*) from t1_30237_boolwhere ((A AND B) AND C) != (A AND (B AND C));count(*)0Testing that AND has precedence over ORselect A, B, C, (A OR B) AND C, A OR (B AND C), A OR B AND Cfrom t1_30237_bool order by A, B, C;A B C (A OR B) AND C A OR (B AND C) A OR B AND CNULL NULL NULL NULL NULL NULLNULL NULL 0 0 NULL NULLNULL NULL 1 NULL NULL NULLNULL 0 NULL NULL NULL NULLNULL 0 0 0 NULL NULLNULL 0 1 NULL NULL NULLNULL 1 NULL NULL NULL NULLNULL 1 0 0 NULL NULLNULL 1 1 1 1 10 NULL NULL NULL NULL NULL0 NULL 0 0 0 00 NULL 1 NULL NULL NULL0 0 NULL 0 0 00 0 0 0 0 00 0 1 0 0 00 1 NULL NULL NULL NULL0 1 0 0 0 00 1 1 1 1 11 NULL NULL NULL 1 11 NULL 0 0 1 11 NULL 1 1 1 11 0 NULL NULL 1 11 0 0 0 1 11 0 1 1 1 11 1 NULL NULL 1 11 1 0 0 1 11 1 1 1 1 1select count(*) from t1_30237_boolwhere (A OR (B AND C)) != (A OR B AND C);count(*)0select A, B, C, (A AND B) OR C, A AND (B OR C), A AND B OR Cfrom t1_30237_bool order by A, B, C;A B C (A AND B) OR C A AND (B OR C) A AND B OR CNULL NULL NULL NULL NULL NULLNULL NULL 0 NULL NULL NULLNULL NULL 1 1 NULL 1NULL 0 NULL NULL NULL NULLNULL 0 0 0 0 0NULL 0 1 1 NULL 1NULL 1 NULL NULL NULL NULLNULL 1 0 NULL NULL NULLNULL 1 1 1 NULL 10 NULL NULL NULL 0 NULL0 NULL 0 0 0 00 NULL 1 1 0 10 0 NULL NULL 0 NULL0 0 0 0 0 00 0 1 1 0 10 1 NULL NULL 0 NULL0 1 0 0 0 00 1 1 1 0 11 NULL NULL NULL NULL NULL1 NULL 0 NULL NULL NULL1 NULL 1 1 1 11 0 NULL NULL NULL NULL1 0 0 0 0 01 0 1 1 1 11 1 NULL 1 1 11 1 0 1 1 11 1 1 1 1 1select count(*) from t1_30237_boolwhere ((A AND B) OR C) != (A AND B OR C);count(*)0Testing that AND has precedence over XORselect A, B, C, (A XOR B) AND C, A XOR (B AND C), A XOR B AND Cfrom t1_30237_bool order by A, B, C;A B C (A XOR B) AND C A XOR (B AND C) A XOR B AND CNULL NULL NULL NULL NULL NULLNULL NULL 0 0 NULL NULLNULL NULL 1 NULL NULL NULLNULL 0 NULL NULL NULL NULLNULL 0 0 0 NULL NULLNULL 0 1 NULL NULL NULLNULL 1 NULL NULL NULL NULLNULL 1 0 0 NULL NULLNULL 1 1 NULL NULL NULL0 NULL NULL NULL NULL NULL0 NULL 0 0 0 00 NULL 1 NULL NULL NULL0 0 NULL 0 0 00 0 0 0 0 00 0 1 0 0 00 1 NULL NULL NULL NULL0 1 0 0 0 00 1 1 1 1 11 NULL NULL NULL NULL NULL1 NULL 0 0 1 11 NULL 1 NULL NULL NULL1 0 NULL NULL 1 11 0 0 0 1 11 0 1 1 1 11 1 NULL 0 NULL NULL1 1 0 0 1 11 1 1 0 0 0select count(*) from t1_30237_boolwhere (A XOR (B AND C)) != (A XOR B AND C);count(*)0select A, B, C, (A AND B) XOR C, A AND (B XOR C), A AND B XOR Cfrom t1_30237_bool order by A, B, C;A B C (A AND B) XOR C A AND (B XOR C) A AND B XOR CNULL NULL NULL NULL NULL NULLNULL NULL 0 NULL NULL NULLNULL NULL 1 NULL NULL NULLNULL 0 NULL NULL NULL NULLNULL 0 0 0 0 0NULL 0 1 1 NULL 1NULL 1 NULL NULL NULL NULLNULL 1 0 NULL NULL NULLNULL 1 1 NULL 0 NULL0 NULL NULL NULL 0 NULL0 NULL 0 0 0 00 NULL 1 1 0 10 0 NULL NULL 0 NULL0 0 0 0 0 00 0 1 1 0 10 1 NULL NULL 0 NULL0 1 0 0 0 00 1 1 1 0 11 NULL NULL NULL NULL NULL1 NULL 0 NULL NULL NULL1 NULL 1 NULL NULL NULL1 0 NULL NULL NULL NULL1 0 0 0 0 01 0 1 1 1 11 1 NULL NULL NULL NULL1 1 0 1 1 11 1 1 0 0 0select count(*) from t1_30237_boolwhere ((A AND B) XOR C) != (A AND B XOR C);count(*)0Testing that XOR has precedence over ORselect A, B, C, (A XOR B) OR C, A XOR (B OR C), A XOR B OR Cfrom t1_30237_bool order by A, B, C;A B C (A XOR B) OR C A XOR (B OR C) A XOR B OR CNULL NULL NULL NULL NULL NULLNULL NULL 0 NULL NULL NULLNULL NULL 1 1 NULL 1NULL 0 NULL NULL NULL NULLNULL 0 0 NULL NULL NULLNULL 0 1 1 NULL 1NULL 1 NULL NULL NULL NULLNULL 1 0 NULL NULL NULLNULL 1 1 1 NULL 10 NULL NULL NULL NULL NULL0 NULL 0 NULL NULL NULL0 NULL 1 1 1 10 0 NULL NULL NULL NULL0 0 0 0 0 00 0 1 1 1 10 1 NULL 1 1 10 1 0 1 1 10 1 1 1 1 11 NULL NULL NULL NULL NULL1 NULL 0 NULL NULL NULL1 NULL 1 1 0 11 0 NULL 1 NULL 11 0 0 1 1 11 0 1 1 0 11 1 NULL NULL 0 NULL1 1 0 0 0 01 1 1 1 0 1select count(*) from t1_30237_boolwhere ((A XOR B) OR C) != (A XOR B OR C);count(*)0select A, B, C, (A OR B) XOR C, A OR (B XOR C), A OR B XOR Cfrom t1_30237_bool order by A, B, C;A B C (A OR B) XOR C A OR (B XOR C) A OR B XOR CNULL NULL NULL NULL NULL NULLNULL NULL 0 NULL NULL NULLNULL NULL 1 NULL NULL NULLNULL 0 NULL NULL NULL NULLNULL 0 0 NULL NULL NULLNULL 0 1 NULL 1 1NULL 1 NULL NULL NULL NULLNULL 1 0 1 1 1NULL 1 1 0 NULL NULL0 NULL NULL NULL NULL NULL0 NULL 0 NULL NULL NULL0 NULL 1 NULL NULL NULL0 0 NULL NULL NULL NULL0 0 0 0 0 00 0 1 1 1 10 1 NULL NULL NULL NULL0 1 0 1 1 10 1 1 0 0 01 NULL NULL NULL 1 11 NULL 0 1 1 11 NULL 1 0 1 11 0 NULL NULL 1 11 0 0 1 1 11 0 1 0 1 11 1 NULL NULL 1 11 1 0 1 1 11 1 1 0 1 1select count(*) from t1_30237_boolwhere (A OR (B XOR C)) != (A OR B XOR C);count(*)0drop table t1_30237_bool;Testing that NOT has precedence over ORselect (NOT FALSE) OR TRUE, NOT (FALSE OR TRUE), NOT FALSE OR TRUE;(NOT FALSE) OR TRUE NOT (FALSE OR TRUE) NOT FALSE OR TRUE1 0 1Testing that NOT has precedence over XORselect (NOT FALSE) XOR FALSE, NOT (FALSE XOR FALSE), NOT FALSE XOR FALSE;(NOT FALSE) XOR FALSE NOT (FALSE XOR FALSE) NOT FALSE XOR FALSE1 1 1Testing that NOT has precedence over ANDselect (NOT FALSE) AND FALSE, NOT (FALSE AND FALSE), NOT FALSE AND FALSE;(NOT FALSE) AND FALSE NOT (FALSE AND FALSE) NOT FALSE AND FALSE0 1 0Testing that NOT is associativeselect NOT NOT TRUE, NOT NOT NOT FALSE;NOT NOT TRUE NOT NOT NOT FALSE1 1Testing that IS has precedence over NOTselect (NOT NULL) IS TRUE, NOT (NULL IS TRUE), NOT NULL IS TRUE;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?