|

楼主 |
发表于 2017-6-13 04:35
|
显示全部楼层
答案BD, 3楼得奖。
A: 一个布尔型参数或者表达式直接取值为TRUE或FALSE(或NULL)。你不需要显式地检测它是TRUE或FALSE。即使你这么做了,语法也不对。你可以将一个布尔值用等号和TRUE做比较,如"value_in = TRUE",但你显然不需要这么做。参数本身就会得到这些值了。
B: 方法可行,但不是最佳的。你不需要将布尔参数(表达式)和TRUE或者FALSE做比较。它自己就会取到这些值!所以WHEN子句的"= TRUE" 和 "= FALSE"仅仅是“噪音”,会阻碍阅读代码。
C: 虽然你能在SQL语句中调用CASE,你不能引用布尔型的变量,因为这是一个PL/SQL特有的数据类型。
D: 这是最自然简单的方法。你不需要将布尔参数(表达式)和TRUE或者FALSE做比较。它自己就会取到这些值!
|
|