數(shù)據(jù)庫思維

1、什么是數(shù)據(jù)庫

典型的數(shù)據(jù)庫是關(guān)系型數(shù)據(jù)庫享怀,最簡單的關(guān)系型數(shù)據(jù)庫可以理解為一張結(jié)構(gòu)化二維表格逾苫。

什么是結(jié)構(gòu)化二維表格?有列(或者叫標(biāo)題部服,列標(biāo)題,是一個意思)有行(至少有一行數(shù)據(jù))就是二維表格拗慨。如果對每一列數(shù)據(jù)都進(jìn)行了完整定義廓八,那就是結(jié)構(gòu)化二維表格。


這是一張常見的學(xué)生信息表赵抢,橫向有行剧蹂,豎向有列,是二維表烦却,沒有問題宠叼。問題是如何結(jié)構(gòu)化?結(jié)構(gòu)化是如何體現(xiàn)的?我們再看一張圖:


這張字段定義表給剛才那張學(xué)生信息表加了限制冒冬,分別從列標(biāo)題(數(shù)據(jù)庫中通常稱為字段伸蚯,后文不做特別說明的話,列標(biāo)題字段是一個意思)名稱简烤、類型剂邮、長度、是否為空做了詳細(xì)限定横侦。

小結(jié)一下:針對二維數(shù)據(jù)表每一列都嚴(yán)格定義了約束條件的就是結(jié)構(gòu)化數(shù)據(jù)表挥萌,一個或多個結(jié)構(gòu)化數(shù)據(jù)表組成的文件就是數(shù)據(jù)庫。

2枉侧、數(shù)據(jù)庫思維

所謂數(shù)據(jù)庫思維瑞眼,就是借鑒數(shù)據(jù)庫對數(shù)據(jù)表的設(shè)計要求,來改善和理解EXCEL中數(shù)據(jù)源型數(shù)據(jù)表的相關(guān)規(guī)范棵逊。注意伤疙,數(shù)據(jù)庫思維是兩層意思。一層是理解辆影,原來不太明白的結(jié)合數(shù)據(jù)庫很容易明白徒像;一層是改善,結(jié)合數(shù)據(jù)庫要求更好的規(guī)范EXCEL數(shù)據(jù)表蛙讥。這部分我們先講整體層面的思考結(jié)論锯蛀,下一節(jié)看實操。

(1)表格上方不要出現(xiàn)表標(biāo)題

第一次慢,數(shù)據(jù)庫表設(shè)計從來沒有表標(biāo)題的概念旁涤,更加不可能在數(shù)據(jù)區(qū)域出現(xiàn)表標(biāo)題;

第二迫像,表標(biāo)題占用了列標(biāo)題行劈愚,會對后續(xù)分析造成很大的干擾;

第三闻妓,表標(biāo)題信息可以體現(xiàn)在sheet名稱中菌羽。

(2)數(shù)據(jù)表設(shè)計要有唯一標(biāo)識列

或者叫缺少主鍵字段,或者叫缺少ID列由缆,一個意思注祖。為什么會有這個建議,只是為了單純模仿數(shù)據(jù)庫均唉?不是的是晨,有實際意義。

保證你對源數(shù)據(jù)可以隨時恢復(fù)的能力舔箭。不管你是排序篩選各種對行順序的折騰罩缴,最后只要按照ID列做一次排序就回來了。

大幅度減少查詢難度。我們知道EXCEL對查詢的支持時比較弱的(和數(shù)據(jù)庫比查詢簡直沒法比)靴庆,通過添加ID列并且讓ID列放在最左邊應(yīng)用VLOOKUP取數(shù)據(jù)會簡單很多。

作為輔助列配合工具將**復(fù)雜多列二維表**轉(zhuǎn)化為**簡單列二維表**怒医,這種做法的細(xì)節(jié)后文會詳述炉抒。

養(yǎng)成一個每行有唯一標(biāo)識字段的良好意識。相信我稚叹,很多困擾使用者的重名問題焰薄,多條件查詢問題,逆序查詢問題扒袖,往往一個ID列就可以解決塞茅。

(3)不要在原始數(shù)據(jù)表中增加任何匯總或合計行

根據(jù)原因是,這樣做會破壞原來結(jié)構(gòu)化的數(shù)據(jù)分布季率,讓部分?jǐn)?shù)據(jù)不再是規(guī)整的了野瘦,想想看如果在學(xué)生信息表的最后一行加一個學(xué)生總數(shù)=110的匯總,那這個110到底是屬于哪個現(xiàn)有字段的飒泻?

(4)不要合并單元格

同樣的鞭光,這會破壞表結(jié)構(gòu),正確的做法是泞遗,讓數(shù)據(jù)重復(fù)惰许。保持?jǐn)?shù)據(jù)適當(dāng)重復(fù)時完全可以接受的,還記得前文提到的課程信息表嗎史辙?一個學(xué)生可以選擇多個課程汹买,所以學(xué)生編號重復(fù)是很正常的。換個角度看聊倔,數(shù)據(jù)庫里根本就沒有合并單元格這個概念晦毙。引申一下,斜線表頭是相同道理耙蔑,都是被禁止的结序。

(5)不要空行空列

很簡單,空行空列也許在視覺上沒有問題纵潦,但在計算上會有各種問題徐鹤。隨便舉個例子,空字段將直接導(dǎo)致數(shù)據(jù)透視表行標(biāo)簽出現(xiàn)空白標(biāo)簽邀层。

(6)工作表與工作簿規(guī)劃

一個工作表(SHEET頁)用來描述一個對象返敬,(比如學(xué)生信息,比如學(xué)生選課信息)寥院,一個工作簿(EXCEL文件)用來描述一類數(shù)據(jù)(比如學(xué)生基礎(chǔ)信息)劲赠。適當(dāng)控制工作表之間的引用,絕對不要產(chǎn)生工作簿之間的引用。

(7)字段內(nèi)容原子化

每個字段的內(nèi)容一定是不能再分了凛澎,比如數(shù)量如果內(nèi)容是“35個”這就不是原子化霹肝,一定還能分成兩列分別是數(shù)量和單位。為什么有這個要求塑煎?一個原因是沫换,數(shù)據(jù)庫包括EXCEL中,對分散數(shù)據(jù)的拼接比準(zhǔn)確拆分容易的多最铁;另一個原因是讯赏,含有數(shù)量的非原子化內(nèi)容比如“35個”將使得數(shù)據(jù)失去可計算性;第三個原因冷尉,原子化意味著大家都是一個粒度的(反正都已經(jīng)拆到不能再拆了)漱挎,而非原子化則可能有各種程度的粒度,這對數(shù)據(jù)之間的引用是非常不利的雀哨。

(8)相同內(nèi)容統(tǒng)一表述

比如班級名稱磕谅,在所有地方同一個班級都應(yīng)該是相同的表述,“天物強化班”和“天體物理學(xué)班”不應(yīng)該同時出現(xiàn)雾棺,軟件會認(rèn)為是兩個班級怜庸。EXCEL中應(yīng)該使用數(shù)據(jù)驗證下拉框規(guī)范此類問題。

(9)特殊格式字段格式要滿足格式要求

比如日期時間字段垢村,不能既有中文又有英文割疾,既有-又有\(zhòng),這都不規(guī)范嘉栓。

(10)每列數(shù)據(jù)類型保持一致

想想看宏榕,數(shù)據(jù)表設(shè)計的時候,每列數(shù)據(jù)是不是天然一致的侵佃,比如出生日期列類型是日期麻昼,那該列數(shù)據(jù)要么是一個具體日期要么空著,絕不允許出現(xiàn)“不記得啦”馋辈,“丑年寅時”這種內(nèi)容抚芦。

(11)禁止空格換行等非可見字符破壞數(shù)據(jù)本身

很簡單,不管是在EXCEL眼里迈螟,還是在任何一個數(shù)據(jù)庫系統(tǒng)眼里叉抡,“西門”和“西 門”(中間加了空格)都是不同的數(shù)據(jù),這些不可見字符會是定時炸彈答毫,表現(xiàn)出各種莫名其妙的問題褥民。比如你檢索“西門”就無法檢索帶空格的那條記錄。有的同學(xué)喜歡ALT+ENTER強制換行或者使用空格將人名對齊洗搂,這都是不可取的消返。

(12)不要批注

這一條估計不少人不太理解载弄。我的看法是,批注內(nèi)容在數(shù)據(jù)內(nèi)容上是不可見的撵颊,輸入的信息有沒有關(guān)鍵信息也是不知道的宇攻,如果確實需要批準(zhǔn)寧可建一列數(shù)據(jù)列叫做批注或者備注。

3倡勇、樸實的就是最好的

回到問題本身逞刷,到底什么數(shù)據(jù)是EXCEL喜歡的?我的答案是译隘,結(jié)構(gòu)化的,類別統(tǒng)一的洛心,最接近數(shù)據(jù)庫表樣式的就是最好的固耘。

第一行是標(biāo)題行。風(fēng)雨無阻词身,第一行一定是標(biāo)題行厅目。

第一列是ID列。盡管不是強制要求法严,但我強烈建議你這么做损敷。

每列數(shù)據(jù)不可拆分,已經(jīng)原子化深啤。每列數(shù)據(jù)類型相同拗馒,格式規(guī)范。

拒絕合并單元格溯街,拒絕斜線表頭诱桂,拒絕空行空列。

沒有空行空列呈昔。

看看下圖(標(biāo)題部分不是數(shù)據(jù)表區(qū)域挥等,別誤會),簡簡單單的數(shù)據(jù)庫表堤尾,就是最好的EXCEL數(shù)據(jù)源表了肝劲。


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市郭宝,隨后出現(xiàn)的幾起案子辞槐,更是在濱河造成了極大的恐慌,老刑警劉巖粘室,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件催蝗,死亡現(xiàn)場離奇詭異,居然都是意外死亡育特,警方通過查閱死者的電腦和手機丙号,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進(jìn)店門先朦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人犬缨,你說我怎么就攤上這事喳魏。” “怎么了怀薛?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵刺彩,是天一觀的道長。 經(jīng)常有香客問我枝恋,道長创倔,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任焚碌,我火速辦了婚禮畦攘,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘十电。我一直安慰自己知押,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布鹃骂。 她就那樣靜靜地躺著台盯,像睡著了一般。 火紅的嫁衣襯著肌膚如雪畏线。 梳的紋絲不亂的頭發(fā)上静盅,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天,我揣著相機與錄音寝殴,去河邊找鬼温亲。 笑死,一個胖子當(dāng)著我的面吹牛杯矩,可吹牛的內(nèi)容都是我干的栈虚。 我是一名探鬼主播,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼史隆,長吁一口氣:“原來是場噩夢啊……” “哼魂务!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起泌射,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤粘姜,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后熔酷,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體孤紧,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年拒秘,在試婚紗的時候發(fā)現(xiàn)自己被綠了号显。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片臭猜。...
    茶點故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖押蚤,靈堂內(nèi)的尸體忽然破棺而出蔑歌,到底是詐尸還是另有隱情,我是刑警寧澤揽碘,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布次屠,位于F島的核電站,受9級特大地震影響雳刺,放射性物質(zhì)發(fā)生泄漏劫灶。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一掖桦、第九天 我趴在偏房一處隱蔽的房頂上張望本昏。 院中可真熱鬧,春花似錦滞详、人聲如沸凛俱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至朱监,卻和暖如春岸啡,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背赫编。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工巡蘸, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人擂送。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓悦荒,卻偏偏與公主長得像,于是被迫代替她去往敵國和親嘹吨。 傳聞我的和親對象是個殘疾皇子搬味,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內(nèi)容