全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:843
推到 Plurk!
推到 Facebook!

請問MSSQL的欄位問題

答題得分者是:a6475
irvinehing
初階會員


發表:77
回覆:79
積分:31
註冊:2003-11-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-17 10:53:53 IP:202.174.xxx.xxx 未訂閱
請問各位大哥關於MSSQL欄位的問題。 小弟需要檢查資料表TableA內的欄位FieldA的內容,用來過濾資料集。 FieadA的欄位型態是字串,FieldA的值有可能是NULL或無值。 TableA內的資料共有25194筆。 小弟用select * from TableA where FieldA!='',取得資料共有18678筆。 select * from TableA where FieldA='',取得資料共有0筆。 select * from TableA where FieldA!=null,取得資料共有0筆。 select * from TableA where FieldA=null,取得資料共有0筆。 按照以上資料顯示,應該共有25194 - 18678 = 6516筆資料的FieldA欄位值不等於''。 但是為啥select * from TableA where FieldA=''卻不能夠取得資料?
a6475
高階會員


發表:67
回覆:230
積分:154
註冊:2002-09-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-17 11:40:55 IP:211.23.xxx.xxx 未訂閱
引言: select * from TableA where FieldA!=null,取得資料共有0筆。 select * from TableA where FieldA=null,取得資料共有0筆。
寫法不對,由於NULL值非常的特別,用比較子的話傳回資料會永遠為0 如用該欄位常用於數值計算的話,最好是別填NULL值,另外用NULL比較 效率也比較慢一點。 正確的寫法: select * from TableA where FieldA IS NULL select * from TableA where FieldA IS NOT NULL 才行 發表人 - a6475 於 2005/03/17 11:44:49
------
月夜 光明 藍更愁
系統時間:2024-05-03 17:20:51
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!