一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

《10周入門數(shù)據(jù)分析》系列的第5篇——寫給新人的數(shù)據(jù)庫(kù)入門指南

 東西二王 2019-04-20

寫給新人的數(shù)據(jù)庫(kù)入門指南

原創(chuàng) 數(shù)據(jù)分析不是個(gè)事兒 2019-02-27 14:48:32

此文是《10周入門數(shù)據(jù)分析》系列的第5篇。

上周更新了兩篇Excel學(xué)習(xí),有讀者反映寫得不夠?qū)嵅佟_@里解釋下,文字真的很難將每一步細(xì)化,不然真的要出一本書。文章更多是一個(gè)引路,告訴大家為什么要學(xué)這個(gè),主要學(xué)什么,怎么學(xué)?深入的操作,還需大家業(yè)余加餐啊,已經(jīng)盡量給大家留了材料了。

也有人提議,出個(gè)視頻,不錯(cuò)!很贊!明年計(jì)劃下。即使沒(méi)有時(shí)間,我也會(huì)推薦一些我認(rèn)為OK的視頻讓大家學(xué)習(xí)。

年底了,近幾個(gè)晚上都在苦熬年終報(bào)告,各位寫好了么?

好了,回到正文,本篇講數(shù)據(jù)庫(kù)知識(shí):

經(jīng)常有剛從事數(shù)據(jù)分析的職場(chǎng)萌新,問(wèn)我做數(shù)據(jù)分析工作要學(xué)些什么,應(yīng)該怎樣規(guī)劃學(xué)習(xí)路徑。我會(huì)告訴他:如果你Excel還用的不溜的話,就先學(xué)學(xué)Excel,當(dāng)你用Excel處理和分析一些小數(shù)據(jù)集沒(méi)有問(wèn)題的時(shí)候(具體表現(xiàn)就是:常用函數(shù)公式信手拈來(lái),數(shù)據(jù)透視表,篩選,排序,圖表繪制操作熟練),你就去學(xué)習(xí)SQL語(yǔ)言,然后用BI去分析去熟悉業(yè)務(wù)。然后到了一定階段,你可以上手R或者Python。后面如果你能更進(jìn)一步,可以去了解一些Spark等大數(shù)據(jù)框架。

為什么要學(xué)習(xí)Excel?

首先Excel是我們最常用的數(shù)據(jù)分析和處理工具,Excel的功能非常豐富,基本可以涵蓋我們?cè)谥笤谄渌浖?SQL、BI、Python、R)中要學(xué)到的那些功能。

有的人可能會(huì)問(wèn),既然Excel這么強(qiáng)大,為什么還要學(xué)其它的工具?這是因?yàn)镋xcel是通過(guò)菜單的形式來(lái)進(jìn)行操作的,很難實(shí)現(xiàn)自動(dòng)化和功能復(fù)用,當(dāng)然你也可以通過(guò)VBA來(lái)實(shí)現(xiàn),用VBA也就是編程了,不過(guò)因?yàn)閂BA這種語(yǔ)言學(xué)會(huì)了基本只能在office軟件中使用,學(xué)習(xí)的投入成本和產(chǎn)出收益不成比例,不推薦學(xué)習(xí),這是客觀原因之一;另外就是Excel在處理比較大的數(shù)據(jù)集的時(shí)候,性能很差,并且經(jīng)常崩潰。(雖然Excel2013及以上版本宣稱可以容納100+萬(wàn)條記錄,但幾萬(wàn)條數(shù)據(jù)就開始卡頓了)。

為什么Excel學(xué)完要學(xué)SQL?

客觀原因是絕大部分?jǐn)?shù)據(jù)分析崗都有SQL技能的要求。企業(yè)里面為了保證數(shù)據(jù)的安全性和管理的方便,數(shù)據(jù)都是統(tǒng)一存放在數(shù)據(jù)庫(kù)中,從數(shù)據(jù)庫(kù)中提取和查詢數(shù)據(jù)需要使用SQL語(yǔ)言,甚至有的公司就是用SQL語(yǔ)言來(lái)做數(shù)據(jù)分析。

另外一個(gè)原因就是即使你先學(xué)了其它的工具,比如R,Python,甚至Spark等大數(shù)據(jù)框架,你會(huì)發(fā)現(xiàn)最后你還是得學(xué)習(xí)SQL。如果你先學(xué)習(xí)SQL,那么很多概念你都能在學(xué)習(xí)R,Python,Spark等更加復(fù)雜的工具之前弄清楚。對(duì)于后面的學(xué)習(xí)會(huì)有幫助。這就好比建房子,都是先打地基,然后一層一層的蓋。

SQL語(yǔ)言的學(xué)習(xí)排在Excel之后,其它工具之前,還有一個(gè)很重要的原因就是,SQL可以在一定程度上幫Excel解決大數(shù)據(jù)集的問(wèn)題,同時(shí)架起一個(gè)通往其它工具的橋梁。

關(guān)于數(shù)據(jù)庫(kù)和SQL的學(xué)習(xí),也是分為兩篇,第一篇講數(shù)據(jù)庫(kù)以及表的概念。第二篇是SQL語(yǔ)句的掌握和數(shù)據(jù)庫(kù)的操作。

一、數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)

先談一下我對(duì)數(shù)據(jù)庫(kù)的理解。數(shù)據(jù)庫(kù)顧名思義就是數(shù)據(jù)的集合,是由一張張數(shù)據(jù)表組成的。

放在物理實(shí)體上,是一堆寫在磁盤上的文件,文件中有數(shù)據(jù)。這些最基礎(chǔ)的數(shù)據(jù)組成了表(table),我們把它想象成一張Excel的sheet,如下圖:

寫給新人的數(shù)據(jù)庫(kù)入門指南

每一張表都有一個(gè)唯一標(biāo)識(shí),即主鍵,也就是ID。ID是數(shù)據(jù)庫(kù)中重要的概念,叫做唯一標(biāo)識(shí)符/主鍵,用來(lái)表示數(shù)據(jù)的唯一性。就相當(dāng)于我們的身份證,是唯一的,有了身份證,就知道數(shù)據(jù)在哪了。

ID通常沒(méi)有業(yè)務(wù)含義,就是一種唯一標(biāo)識(shí),每張表只能有一個(gè)主鍵,且主鍵通常是整數(shù),主鍵一旦設(shè)立,值通常不允許修改。

數(shù)據(jù)庫(kù)是表的集合。一個(gè)數(shù)據(jù)庫(kù)中可以放多張表,我們給每張表命名,表與表之間能互相聯(lián)系。聯(lián)系就是數(shù)據(jù)能夠?qū)?yīng)匹配,正式名稱叫聯(lián)接,對(duì)應(yīng)的操作叫做Join,我們想象成Excel中的vlookup。

寫給新人的數(shù)據(jù)庫(kù)入門指南

比如上面兩張圖,左圖是學(xué)生信息表,右圖是老師信息表。左圖的主鍵是學(xué)生ID,右圖的主鍵是老師ID。細(xì)心的讀者可能發(fā)現(xiàn)右圖還有一個(gè)學(xué)生ID,這里的學(xué)生ID是專門用來(lái)聯(lián)接用戶表的,它并不是主鍵。只不過(guò)兩張表通過(guò)學(xué)生ID這個(gè)唯一信息來(lái)關(guān)聯(lián)。

但兩張表關(guān)聯(lián)也并不是信息能一一對(duì)應(yīng)的,也會(huì)存在空缺的時(shí)候,比如:

寫給新人的數(shù)據(jù)庫(kù)入門指南

那兩表建立連接就會(huì)變成:

寫給新人的數(shù)據(jù)庫(kù)入門指南

了解上面的概念,你就知道什么叫關(guān)系型數(shù)據(jù)庫(kù)。簡(jiǎn)單說(shuō),它是由多張能互相聯(lián)接的二維行列表格組成的數(shù)據(jù)庫(kù)。在數(shù)據(jù)準(zhǔn)備時(shí),我們通常要建立表關(guān)聯(lián)來(lái)分析。

關(guān)系型數(shù)據(jù)庫(kù)是基于關(guān)系代數(shù)模型發(fā)展而來(lái),常用的關(guān)系型數(shù)據(jù)庫(kù)有SQL Server、MySQL、Oracle、DB2等,這個(gè)視企業(yè)使用為準(zhǔn),我們后續(xù)學(xué)習(xí)都以MySQL為主。

各關(guān)系型數(shù)據(jù)庫(kù)(不感興趣可跳過(guò)):

DB2: 關(guān)系型數(shù)據(jù)庫(kù), 適用于大型的分布式應(yīng)用系統(tǒng), 確實(shí)是非常非常好的數(shù)據(jù)庫(kù), 無(wú)論穩(wěn)定性, 安全性, 恢復(fù)性等等都無(wú)可挑剔, 而且從小規(guī)模到大規(guī)模的應(yīng)用都非常適合。但是使用起來(lái)覺得非常繁瑣, 安裝的時(shí)候要求頗多, 很多軟件都可能和DB2產(chǎn)生沖突, 因?yàn)橐话鉊B2都是安裝在小型機(jī)或者服務(wù)器上的, 所以在PC上安裝很費(fèi)事兒。新建一個(gè)庫(kù)需要設(shè)置很多東西, 分配各種各樣的存儲(chǔ)空間。

Oracle: 是目前市場(chǎng)占有率最大的數(shù)據(jù)庫(kù), 我在學(xué)習(xí)SSH的時(shí)候用的就是Oracle, 安裝起來(lái)很繁瑣, 而且居然程序文件有3G之多... 用起來(lái)非常方便, 對(duì)于我這樣的初學(xué)者, 有很簡(jiǎn)單的配置, 對(duì)于要求很高的企業(yè)級(jí)應(yīng)用, 也有很復(fù)雜的配置和管理方法, 有很強(qiáng)大的數(shù)據(jù)字典, 可以說(shuō)是最實(shí)用的數(shù)據(jù)庫(kù)了, 但是查了一下, 價(jià)格不菲...

MS SQL: 當(dāng)初用的是2000和2005版, 這兩個(gè)版本差了很多。2000的數(shù)據(jù)庫(kù)做的不錯(cuò), 程序很小, 操作簡(jiǎn)單, 功能較全, 算是各方面都很中庸的數(shù)據(jù)庫(kù)吧, 是中型數(shù)據(jù)庫(kù), 我的畢業(yè)設(shè)計(jì)就是用MS SQL 2000做的。2005中加入了很多功能, 復(fù)雜多了, 有大型數(shù)據(jù)庫(kù)的風(fēng)范了, 而且價(jià)格也變高了, 個(gè)人覺得除非用的是Window Server 系統(tǒng)或者針對(duì)Microsoft產(chǎn)品, 否則不如用Oracle好。

MySQL: MySQL是一個(gè)很好的關(guān)系型數(shù)據(jù)庫(kù), 免費(fèi), 而且功能很全, 程序又小, 安裝簡(jiǎn)單, 現(xiàn)在很多網(wǎng)站都用MYSQL, 在字段約束上做的差了點(diǎn)兒, 其他的都不錯(cuò), 和MS SQL 用著差不多。

Access: 典型的桌面數(shù)據(jù)庫(kù), 覺得做個(gè)單機(jī)系統(tǒng), 比如記賬, 記事兒什么的還成, 在局域網(wǎng)里跑個(gè)小系統(tǒng)都?jí)騿? 數(shù)據(jù)源連接很簡(jiǎn)單, 因?yàn)槭荗ffice的數(shù)據(jù)庫(kù), 所以Windows自帶數(shù)據(jù)源。

更多關(guān)于數(shù)據(jù)庫(kù)的知識(shí),看一本《數(shù)據(jù)庫(kù)系統(tǒng)概論》就夠了。

二、嘗試使用MySQL數(shù)據(jù)庫(kù)

如果還沒(méi)有接觸過(guò)數(shù)據(jù)庫(kù)或者說(shuō)SQL,推薦大家下載并安裝MySQL數(shù)據(jù)進(jìn)行嘗試,MySQL數(shù)據(jù)庫(kù)的下載安裝比較簡(jiǎn)單,安裝完成就可以使用。

可以訪問(wèn)MySQL官網(wǎng)進(jìn)行下載,網(wǎng)址如下(這里給出的是Windows版下載地址):

「鏈接」

寫給新人的數(shù)據(jù)庫(kù)入門指南

下載MySQL時(shí),需要進(jìn)行免費(fèi)注冊(cè),注冊(cè)頁(yè)面是英文的。下載該工具后,點(diǎn)擊運(yùn)行,這個(gè)程序就能夠聯(lián)網(wǎng)自動(dòng)為你安裝MySQL,并自動(dòng)進(jìn)行配置。在安裝過(guò)程中,需要你設(shè)置密碼,自己設(shè)置一個(gè)登陸密碼,并記住,下次登陸MySQL時(shí),需要這個(gè)密碼。

解壓之后沒(méi)有my.ini文件(我的端口設(shè)置的3308),截圖中是我增加的。

寫給新人的數(shù)據(jù)庫(kù)入門指南

管理員命令行:

在MySQL安裝目錄的 bin 目錄下執(zhí)行命令:

mysqld --initialize --console

得到如下結(jié)果:

寫給新人的數(shù)據(jù)庫(kù)入門指南

看到有個(gè)警告,查了一下mysql建議使用utf8mb4

修改my.ini文件

寫給新人的數(shù)據(jù)庫(kù)入門指南

警告沒(méi)有了,上面打印了默認(rèn)密碼:nj>uUJkpH4/I

然后,安裝服務(wù):

mysqld --install MySQL8.0

因?yàn)檫@是電腦上第二個(gè)mysql 所以服務(wù)名改成了 MySQL8.0

寫給新人的數(shù)據(jù)庫(kù)入門指南

啟動(dòng)服務(wù):

net start MySQL8.0

寫給新人的數(shù)據(jù)庫(kù)入門指南

修改初始密碼

登錄mysql之后執(zhí)行:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

寫給新人的數(shù)據(jù)庫(kù)入門指南

將MySQL和Excel或者其它數(shù)據(jù)分析工具連接起來(lái)

默認(rèn)安裝的情況下,有一個(gè)插件允許MySQL數(shù)據(jù)庫(kù)和Excel相連接,試想一下,我們?cè)贛ySQL數(shù)據(jù)庫(kù)中通過(guò)SQL語(yǔ)言進(jìn)行大量數(shù)據(jù)的處理和計(jì)算,將計(jì)算結(jié)果存放在特定的數(shù)據(jù)表中,再通過(guò)Excel連接上MySQL數(shù)據(jù)庫(kù),將數(shù)據(jù)讀取到Excel中,用Excel進(jìn)行分析并繪制圖表,免去了將數(shù)據(jù)從數(shù)據(jù)庫(kù)導(dǎo)出再導(dǎo)入Excel的麻煩,是不是就可以提高效率了呢?

后面會(huì)分享一篇通過(guò)ODBC驅(qū)動(dòng)程序連接一些報(bào)表BI工具來(lái)做分析的操作。

關(guān)于MySQL的學(xué)習(xí)推薦書籍《MySQL必知必會(huì)》。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    午夜国产精品国自产拍av| 最好看的人妻中文字幕| 国产中文另类天堂二区| 91人人妻人人爽人人狠狠| 麻豆一区二区三区在线免费| 欧美丝袜诱惑一区二区| 国产日产欧美精品视频| 在线九月婷婷丁香伊人| 久久精品福利在线观看| 91亚洲国产成人久久| 好吊日在线观看免费视频| 中文字幕一区二区三区中文| 国产视频在线一区二区| 久久中文字人妻熟女小妇| 国产偷拍精品在线视频| 国产高清一区二区不卡| 深夜视频成人在线观看| 日本人妻中出在线观看| 亚洲一区二区三区熟女少妇| 91在线国内在线中文字幕| 色婷婷视频免费在线观看| 成人亚洲国产精品一区不卡| 欧美日韩久久精品一区二区| 国产伦精品一一区二区三区高清版 | 日韩中文字幕狠狠人妻| 久久精品国产亚洲熟女| 亚洲女同一区二区另类| 大香蕉伊人精品在线观看| 99热九九在线中文字幕| 国产传媒欧美日韩成人精品| 一区二区三区在线不卡免费| 四季精品人妻av一区二区三区 | 一区二区三区免费公开| 中文字幕一区二区熟女| 国产精品欧美一区两区| 精品一区二区三区中文字幕| 国产成人精品国产亚洲欧洲 | 欧美日本道一区二区三区| 黄色片一区二区在线观看| 一区二区日本一区二区欧美| 国产成人在线一区二区三区|