MySQL處理空值時你需要注意的兩個問題

2021-08-25 18:39:56 字數 669 閱讀 6021

陷阱一:空值不一定為空

在mysql資料庫中,null對於一些特殊型別的列來說,其代表了一種特殊的含義,而不僅僅是乙個空值。對於這些特殊型別的列,各位讀者主要是要記住兩個。乙個就是筆者上面舉的times*****p資料型別。如果往這個資料型別的列中插入null值,則其代表的就是系統的當前時間。另外乙個是具有auto_increment屬性的列。如果往這屬性的列中插入null值的話,則系統會插入乙個正整數序列。而如果在其他資料型別中,如字元型資料的列中插入null的資料,則其插入的就是乙個空值。

陷阱二:空值不一定等於空字元

一是is null 和is not null關鍵字。如果要判斷某個字段是否含用空值的資料,需要使用特殊的關鍵字。其中前者表示這個欄位為空,後者表示這個欄位為非空。在select語句的查詢條件中這兩個關鍵字非常的有用。如需要查詢所有**號碼為空的使用者(需要他們補充**號碼資訊),就可以在查詢條件中加入is not null關鍵字。

二是count等統計函式,在空值上也有特殊的應用。如現在需要統計使用者資訊表中有**號碼的使用者數量,此時就可以使用count函式、同時將**號碼作為引數來使用。因為在統計過程中,這個函式會自動忽略空值的資料。此時統計出來的就是有**號碼的使用者資訊。如果採用的是空字元的資料,則這個函式會將其統計進去。如下圖所示,統計剛才建立的兩條記錄時,系統統計的結果是1,而不是2。可見系統自動將null值的資料忽略掉了。

判斷條件為空時需要注意

if accessuser null equals accessuser accesspassword null accesspassword.equals accessuser.equals usercheck accesspassword.equals passwordcheck 第一點 先判斷...

配置時需要注意的

搭建的時候肯定不會在同一臺主機上搭建。大多都是在不同的伺服器上安裝不同的角色 追蹤器主機上的 配置檔案填寫的是 當前主機的ip 儲存節點主機上的 bind addr 填的就是當前主機的ip 配置中tracker server 填的蹤器的ip和埠 儲存節點的輪詢 就是在新增一次tracker serv...

編寫SHELL時需要注意空格

以下這是一段簡單的linux shell 功能是用於查詢當前目錄及其所有目錄中,哪些檔案中包括了 html 這四個字元,並將該檔名給列印出來,咋一看這段 應該是沒有問題的,但是實際上卻存在著兩個問題,先看下面的 吧 1 第乙個問題是賦值語句不能夠在變更與值之間有空格,如上面的這一句 wordnum ...