set g_bgjob = ""'      IF..."/> set g_bgjob = ""'      IF..."/>
網路城邦
上一篇 回創作列表 下一篇   字體:
TIPTOP 欄位值為""或NULL的各種比對
2018/04/29 07:28:36瀏覽964|回應0|推薦0
 LET g_bgjob = ""  #此處用 LET  g_bgjob = NULL, 後面的檢查結果仍相冋

      DISPLAY '--> set g_bgjob = ""'  

   IF cl_null(g_bgjob) THEN  #鼎新的function,

      DISPLAY '--> if cl_null(g_bgjob) , true'    #結果是true

   ELSE  

      DISPLAY '--> if cl_null(g_bgjob)  , false'

   END IF  

   IF g_bgjob IS NULL THEN   #直接比對是否空值要用 IS NULL

      DISPLAY '--> if g_bgjob IS NULL , true'   #結果是true

   ELSE  

      DISPLAY '--> if g_bgjob IS NULL , false'

   END IF  

   IF g_bgjob = "" THEN   #直接比對是否空值要用 IS NULL

      DISPLAY '--> if g_bgjob = "" , true'

   ELSE  

      DISPLAY '--> if g_bgjob = "" , false'    #結果是false,  不符合直覺,要注意

   END IF  

   IF g_bgjob = 'Y' THEN 

      DISPLAY '--> if g_bgjob = Y , true'

   ELSE  

      DISPLAY '--> if g_bgjob = Y , false'  #結果是false,符合直覺

   END IF  

   IF g_bgjob <> 'Y' THEN 

      DISPLAY '--> if g_bgjob <> Y , true'

   ELSE  

      DISPLAY '--> if g_bgjob <> Y , false'   #結果是false,不符合直覺,要注意

   END IF  


在console顯示的結果如下:

#LET  g_bgjob = ""


--> set g_bgjob = ""

--> if cl_null(g_bgjob) , true     #結果是false,符合直覺

--> if g_bgjob IS NULL , true   #結果是false,符合直覺 ,

                                              #直接比對是否空值要用 IS NULL

--> if g_bgjob = "" , false        #結果是false,  不符合直覺,要注意 

                                              #直接比對是否空值要用 IS NULL

--> if g_bgjob = Y , false        #結果是false,符合直覺

--> if g_bgjob <> Y , false    #結果是false,不符合直覺,要注意 



#一開始改用 LET  g_bgjob = NULL, 後面的檢查結果仍相冋


--> set g_bgjob = NULL

--> if cl_null(g_bgjob) , true

--> if g_bgjob IS NULL , true

--> if g_bgjob = "" , false

--> if g_bgjob = Y , false

--> if g_bgjob <> Y , false

( 知識學習其他 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=shfm1969&aid=111675623