MySQL NULL 值處理例項詳解

2022-09-25 22:54:11 字數 3413 閱讀 6379

mysql null 值處理

我們已經知道mysql使用 sql select 命令及 where 子句來讀取資料表中的資料,但是當提供的查詢條件欄位為 null 時,該命令可能就無法正常工作。

為了處理這種情況,mysql提供了三大運算子:

關於 null 的條件比較運算是比較特殊的。你不能使用 = null 或 != null 在列中查詢 null 值 。

在mysql中,null值與任何其它值的比較(即使是null)永遠返回false,即 null = null 返回false 。

mysql中處理null使用is null和is not null運算子。

在命令提示符中使用 null 值

以下例項中假設資料庫 tutorials 中的表 tcount_tbl 含有兩列 tutorial_authorwww.cppcns.com 和 tutorial_count, tutorial_count 中設定插入null值。

例項嘗試以下例項:

root@host# mysql -u root -p password;

enter password:*******

mysql> use tutorials;

database changed

mysql> create table tcount_tbl

-> (

-> tutorial_author varchar(40) not null,

-> tutorial_count int

-> );

query ok, 0 rows affected (0.05 sec)

mysql> insert into tcount_tbl

-> (tutorial_author, tutorial_count) values ('mahran', 20);

mysql> insert into tcount_tbl

-> (tutorial_author, tutorial_count) values ('mahnaz', null);

mysql> insert into tcount_tbl

-> (tutorial_author, tutorial_count) va程式設計客棧lues ('jen', null);

mysql> insert into tcount_tbl

-> (tutorial_author, tutorial_count) values ('gill', 20);

mysql> select * from tcount_tbl;

+-----------------+----------------+

| tutorial_author | tutorial_count |

+-----------------+----------------+

| mahran | 20 |

| mahnaz | null |

| jen | null |

| gill | 20 |

+-----------------+----------------+

4 rows in set (0.00 sec)

mysql>

以下例項中你可以看到 = 和 != 運算子是不起作用的:

mysql> select * from tcount_tbl where tutorial_count = null;

empty set (0.00 sec)

mysql> select * from tcount_tbl where tutorial_count != null;

empty set (0.01 sec)

查詢資料表中 tutorial_count 列是否為 null,必須使用is null和is not null,如下例項:

mysql> select * from tcount_tbl

-> where tutorial_count is nullwww.cppcns.com;

+-----------------+----------------+

| tutorial_author | tutorial_count |

+-----------------+----------------+

| mahnaz | null |

| jen | null |

+-----------------+----------------+

2 rows in set (0.00 sec)

mysql> select * from tcount_tbl

-> where tutorial_count is not null;

+-----------------+----------------+

| tutorial_author | tutorial_count |

+-----------------+----------------+

| mahran | 20 |

| gill | 20 |

+-----------------+----------------+

2 rows in set (0.00 sec)

使用php指令碼處理 null 值

php指令碼中你可以在 if...else 語句來處理變數是否為空,並生成相應的條件語句。

以下例項中php設定了$tutorial_count變數,然後使用該變數與資料表中的 tutorial_count 字段進行比較:

<?php $dbhost = 'localhost:3036';

$dbuser = 'root';

$dbpass = 'rootpassword';

$conn = mysql_connect($dbhost, $dbuser, $dbpass);

if(! $conn )

if( isset($tutorial_count ))

else

mysql_select_db('tutorials');

$retval = mysql_query( $sql, $conn );

if(! $retval )

dqvpxtrct

while($row = mysql_fetch_array($retval, mysql_assowww.cppcns.comc))

"."count:

". "--------------------------------

";}

echo "fetched data successfully\n";

mysql_close($conn);

?>

本文標題: mysql null 值處理例項詳解

本文位址:

MySQL NULL 值處理(整理)

mysql 使用 sql select 命令及 where 子句來讀取資料表中的資料時,當提供的查詢條件欄位為 null 時,該命令可能就無法正常工作。為了處理這種情況,mysql提供了三大運算子 因為關於 null 的條件比較運算是比較特殊的。不能使用 null 或 null 在列中查詢 null...

MySQL NULL 值如何處理?

我們已經知道 mysql 使用 sql select 命令及 where 子句來讀取資料表中的資料,但是當提供的查詢條件欄位為 null 時,該命令可能就無法正常工作。為了處理這種情況,mysql提供了三大運算子 is null 當列的值是 null,此運算子返回 true。is not null ...

理論小知識 MySQL NULL 值處理

我們已經知道 mysql 使用 sql select 命令及 where 子句來讀取資料表中的資料,但是當提供的查詢條件欄位為 null 時,該命令可能就無法正常工作。為了處理這種情況,mysql提供了三大運算子 is null 當列的值是 null,此運算子返回 true。is not null ...