sql server 中的null和null的區別

2021-06-25 14:47:34 字數 2220 閱讀 8547

1樓:匿名使用者

sql server 中的null和null的區別'' 表示空字串

null表示什麼都沒有,什麼都不是

判斷'' 用 ='' 或 <>'' , 而null 用is null 或is not null,欄位中如果出現null 會對查詢語句造成影響有可能導致索引失效,所以欄位中儘量不要出現null ,用'' 或其他字元代替 ,糾正一下其他人的觀點:null不代表空字串 哦, 代表表示什麼都沒有,什麼都不是,可以出現在任意型別欄位裡面(int,decimal,varchar 等等都可以是null),''只能在varchar,char型別裡面出現

2樓:尐i強

在資料是未知數或者無法使用時,大多數的資料庫管理系統將儲存一個叫做null值的特殊值。不要將它和零(一個合法數值)、零長度串(不含有字元的一種串資料型別)或空格字元混淆起來。sql-3標準中把一個null定義為:

「...一個用來指明任何資料值都不存在的一個特殊值...」

sqlserver中有一個空值呼叫函式:

isnull 功能:使用指定的替換值替換 null。

語法 isnull ( check_expression , replacement_value )

引數 check_expression

將被檢查是否為 null的表示式。check_expression 可以是任何型別的。

replacement_value

在 check_expression 為 null時將返回的表示式。replacement_value 必須與 check_expresssion 具有相同的型別。

返回型別

返回與 check_expression 相同的型別。

註釋 如果 check_expression 不為 null,那麼返回該表示式的值;否則返回 replacement_value。

一個例子:

使用 isnull

下面的示例為 titles 表中的所有書選擇書名、型別及**。如果一個書名的**是 null,那麼在結果集中顯示的**為 0.00。

select substring(title, 1, 15) as title, type as type,

isnull(price, 0.00) as price

from titles

sql 『』與null 的區別

3樓:

'' 表示

bai空字串

null表示什麼都沒有du,什麼都不zhi是判斷'' 用 ='' 或

<>'' , 而null 用is null 或is not null,欄位dao中如果內出現null 會對查詢語句容造成影響有可能導致索引失效,所以欄位中儘量不要出現null ,用'' 或其他字元代替 ,糾正一下其他人的觀點:null不代表空字串 哦, 代表表示什麼都沒有,什麼都不是,可以出現在任意型別欄位裡面(int,decimal,varchar 等等都可以是null),''只能在varchar,char型別裡面出現

4樓:龍羽君

都表示為空字串,區別主要在於查詢上

null的查詢條件要寫成 where 欄位名 is (not) null

''的查詢條件要寫成 where 欄位名=''

5樓:兩廂遺忘

什麼意思?你的意思是指空格與null的區別嗎?

6樓:匿名使用者

沒弄清楚你說的什麼意思?

sql 資料庫 null 和 空字串的區別

7樓:sql的藝術

資料庫中的

null:表示「沒有對(列)變數輸入資料」,即在資料庫中的null可以區分「沒有對(列)變數輸入資料」和「有對(列)變數輸入資料」這兩類情況。

空字串:則是這裡的「有對(列)變數輸入資料」這一類情況,即有輸入資料,只是輸入的資料為空字串(含有終止符的還是)。

mssql對與null和空字串的判斷

--1、null判斷

select * from 表名 where 列名 is null

--2、空字串判斷

select * from 表名 where 列名=''

--3、null和空字串一併判斷

select * from 表名 where isnull(列名,'')=''

關於sql server中case when then中or的用法

case when中的各個條件不能有交集,否則會出現異常 該例的結果應該如下 select id,name score case when uscore 80 or cscore 90 then 優 when uscore 60 or cscore 70 then 不及格 else 中等 end f...

如何收縮SQL Server中的Tempdb資料庫

1 tempdb資料庫是臨時資料庫,不用對其進行收縮的。2 只要重啟sql服務就tempdb就會恢復原始狀態,所以不用收縮。3 tempdb並不儲存真是資料,只是資料臨時暫存,你收縮或者不收縮,對執行速度提升不大。4 應從根本上去對sql語句或程式層面找問題,分析問題,從而解決問題。如何收縮 sql...

sqlserver中varchar最大長度是多少

最大長度8000,用max可以儲存達到2g。例如 varchar n max 可變長度,非 unicode 字元資料。n 的取值範圍為 1 至 8,000。max 指示最大儲存大小是 2 31 1 個位元組。在某些情況下,前臺應用對過長的字串是無法正確處理的,比如一些 控制,比如c 定義的字串變數。...