日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python 空值_数据库中的空值与NULL的区别以及python中的NaN和None

發布時間:2025/3/15 python 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 空值_数据库中的空值与NULL的区别以及python中的NaN和None 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

展開全部

數據庫里面的”32313133353236313431303231363533e59b9ee7ad9431333363393632空值”有兩種:空字符(“”)、空值(NULL)。

兩種存儲方式在數據庫中都很常見,實際中根據業務或者個人習慣可以用這兩種方式來存儲“空值”。那這兩種到底有什么區別,下面通過例子直接來展示:

-- 創建表testcreate table `test` (`id` int not null ,`name` varchar(255) null ,`date` timestamp null ,`class` varchar(255) null );insert into test (id,name,date,class) values (1,'張三','2017-03-01','a班');insert into test (id,name,date,class) values (2,'李四','2017-03-02','');insert into test (id,name,class) values (3,'王五','c班');select * from test;1234567891011

select count(date),count(class) from test;1

看到這里應該明白了,直觀看空字符和NULL的區別在于,在做count計算的時候,空字符也會被計算在里面,而NULL不會。有些同學在使用where is null 和is not null 的時候也要注意數據庫中的“空值”是空字符還是NULL。不然統計結果可能并不是你想要的。

平時有些數據是需要借助python 來處理的,我們來看看python獲取數據的時候有哪些需要注意的。

python有兩種方式獲取數據:

1. 一種是把數據從MYSQL 中導出到txt或者csv,然后本地讀取;

2. 另一種是python直接鏈接數據庫,讀取數據;

先看第一種:導出到csv,python 讀取

第二種:

兩種方式讀取的數據居然不一樣!第一種把數據從MYSQL導出后,python讀取時,空值即為NULL;

第二種鏈接數據庫后,python能讀取表結構,數據庫的NULL對應列表中的None以及pandas中的NaN(如果字段類型是時間,則為NaT)。而數據庫中的空字符,則被識別為空字符。

個人理解的等式

NULL(數據庫)=None(python列表)=NaN(pandas)

空字符(數據庫)=空字符(python列表)=空字符(pandas)

從csv中獲取數據時:空值(csv)=NULL(數據庫)=NaN(pandas)

轉為csv數據時:數據庫中的NULL\空字符和pandas中的NaN\空字符,都變成csv中的空值

在python處理完數據后,往數據庫寫數據的時候也一樣。注意注意!

總結

以上是生活随笔為你收集整理的python 空值_数据库中的空值与NULL的区别以及python中的NaN和None的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。