首頁 > 資料庫 > mysql教程 > mysql的is null什麼意思

mysql的is null什麼意思

青灯夜游
發布: 2023-04-03 16:19:14
原創
6691 人瀏覽過

在mysql中,「is null」是指空值查詢,用來判斷欄位的值是否為空值(NULL)。如果欄位的值是空值,則滿足查詢條件,該記錄將被查詢出來;如果欄位的值不是空值,則不符合查詢條件。 「is null」是一個比較運算符,故而可以在任何可以使用運算符的地方使用它,例如select或where語句中。

mysql的is null什麼意思

本教學操作環境:windows7系統、mysql8版本、Dell G3電腦。

MySQL IS NULL:空值查詢

#MySQL 提供了 IS NULL 關鍵字,用來判斷欄位的值是否為空值( NULL)。空值不同於 0,也不同於空字串。

如果欄位的值是空值,則滿足查詢條件,該記錄將會被查詢出來。如果欄位的值不是空值,則不符合查詢條件。

使用 IS NULL 的基本語法格式如下:

IS [NOT] NULL
登入後複製

其中,「NOT」是可選參數,表示欄位值不是空值時滿足條件。

如果值為null,則表達式傳回TRUE,否則傳回FALSE。

注意,MySQL沒有內建BOOLEAN類型(布林值),其使用TINYINT(1)來表示BOOLEAN值,即1表示TRUE,0表示FALSE。

is null是一個比較運算符,故而可以在任何可以使用運算子的地方使用它,例如select或where語句中。

SELECT
	1 IS NULL,
	0 IS NULL,
NULL IS NULL;
登入後複製

mysql的is null什麼意思

要檢查某欄位不是NULL,則可使用is not null。

SELECT
	1 IS NOT NULL,
	0 IS NOT NULL,
NULL IS NOT NULL;
登入後複製

mysql的is null什麼意思

範例

從customers表使用IS NULL運算子找出沒有銷售代表的客戶:

SELECT
	customerName,
	country,
	salesRepEmployeeNumber 
FROM
	customers 
WHERE
	salesRepEmployeeNumber IS NULL 
ORDER BY
	customerName 
	LIMIT 5;
登入後複製

mysql的is null什麼意思

MySQL IS NULL的特殊功能

#為了與ODBC程式相容,MySQL支援IS NULL運算子的一些特殊功能。

1)如果具有約束條件如NOT NULL並且包含特殊日期'0000-00-00'的、格式是date或datetime的字段,可以is null運算符來查找。

CREATE TABLE IF NOT EXISTS projects (
    id INT AUTO_INCREMENT,
    title VARCHAR(255),
    begin_date DATE NOT NULL,
    complete_date DATE NOT NULL,
    PRIMARY KEY(id)
);
 
INSERT INTO projects(title,begin_date, complete_date)
VALUES('New CRM','2020-01-01','0000-00-00'),
      ('ERP Future','2020-01-01','0000-00-00'),
      ('VR','2020-01-01','2030-01-01');
 
SELECT * FROM projects WHERE complete_date IS NULL;
登入後複製

mysql的is null什麼意思

建立了一個名為projects的表,其complete_date 欄位not null且含有特殊日期'0000-00-00'。

使用 complete_date IS NULL可以取得日期為'0000-00-00'的行。

2)繼續使用projects表。

如果變數@@sql_auto_is_null設定為1,則可以在insert使用is null運算子執行語句後取得id產生列的值。

注意,在預設情況下,@@sql_auto_is_null設定為0。

 set @@sql_auto_is_null =1;
insert into projects (title,begin_date,complete_date)
values('MRP III','2010-01-01','2020-12-31');

select id from projects where id is null;
登入後複製

mysql的is null什麼意思

【相關推薦:mysql影片教學

以上是mysql的is null什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板