有如下查詢:
但是,在SQLServer的查詢語句中,isnull需要兩個參數,它的含義是如果參數1為NULL,則以參數2為isnull函數的返回值;
即,上面查詢的的含義是,查詢vhhostlist表中s_comment='test202'那一行lastchanged字段的值,如果它為NULL,則返回一個空字符串;
記得以前不懂這個的時候,遇到這樣一個情況:一張訂單表,其中一個字段是status,訂單提交上來時status為NULL。 在程序里要做如下判斷,當它為NULL時,顯示一個審核的超鏈接;當它不為空時,顯示一個字符串:已審。當時的程序是這樣寫的:
其實這樣的判斷是不慎密的,rs("status")<>""并不代表就rs("status")就等于已經審核;也并不表示rs("status")<>""以外的情況就是未審狀態;
最合理的應該就是用isnull(status,'') as status把status查出來,如果rs("status")=""則表示未審,這是一定成立的!
新聞熱點
疑難解答