MySQL
每周練習(xí)
本周我們來一道數(shù)據(jù)處理的練習(xí)題。
數(shù)據(jù)背景
不知道大家學(xué)會(huì)爬蟲了沒,拉勾網(wǎng)的數(shù)據(jù)大家會(huì)爬取了嗎?這道題和拉勾網(wǎng)有關(guān)哦。
假設(shè)你已經(jīng)學(xué)會(huì)爬取數(shù)據(jù)了,可以將數(shù)據(jù)爬取下來,數(shù)據(jù)可能是這個(gè)樣子(demo庫中的tm_lagou_data表):
CREATE TABLE `tm_lagou_data` (
`city` varchar(20) DEFAULT NULL COMMENT '城市',
`company_short_name` varchar(100) DEFAULT NULL COMMENT '公司簡稱',
`company_full_name` varchar(200) DEFAULT NULL COMMENT '公司全稱',
`company_industry` varchar(100) DEFAULT NULL COMMENT '所屬行業(yè)',
`company_location` varchar(100) DEFAULT NULL COMMENT '工作地點(diǎn)',
`position_advantage` varchar(100) DEFAULT NULL COMMENT '崗位特點(diǎn)',
`position_salary` varchar(20) DEFAULT NULL COMMENT '薪資',
`position_workyear` varchar(20) DEFAULT NULL COMMENT '工作經(jīng)驗(yàn)',
`position_name` varchar(50) DEFAULT NULL COMMENT '職位名稱',
`position_first_type` varchar(100) DEFAULT NULL COMMENT '崗位類型-大類',
`position_second_type` varchar(100) DEFAULT NULL COMMENT '崗位類型-小類',
`position_lables` varchar(100) DEFAULT NULL COMMENT '崗位標(biāo)簽',
`position_id` varchar(20) DEFAULT NULL COMMENT '崗位ID',
`create_time` datetime DEFAULT NULL COMMENT '發(fā)布時(shí)間',
`job_desc` text comment '崗位描述'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='拉勾網(wǎng)-數(shù)據(jù)分析數(shù)據(jù)';
在Python中,我們沒有過多的處理,數(shù)據(jù)是這個(gè)樣子的

這一次呢,我們只需要關(guān)注一個(gè)字段即可company_industry,這是公司所屬行業(yè)
這個(gè)行業(yè)呢,一般會(huì)有多個(gè),像上海的這個(gè)挖財(cái)網(wǎng),就是互聯(lián)網(wǎng)+金融,有2個(gè)標(biāo)簽,中間是逗號(hào)分隔符

問題描述
原始數(shù)據(jù):
tm_lagou_data表中,company_industry(所屬行業(yè))字段可能會(huì)有多個(gè)值,并用逗號(hào)分隔

我們的目的是把這個(gè)字段拆分,變成下面這樣的數(shù)據(jù)
處理后數(shù)據(jù):

知識(shí)點(diǎn)
為了解決上面的問題,我們需要掌握的知識(shí)點(diǎn)如下:
多表關(guān)聯(lián):
MySQL-關(guān)聯(lián)查詢
Mysql 連接的使用字符串函數(shù): https://dev.mysql.com/doc/refman/5.7/en/string-functions.html
附
有了拆分后的數(shù)據(jù),我們就可以看數(shù)據(jù)分析師的行業(yè)分布,哪個(gè)行業(yè)招的數(shù)據(jù)分析師最多,哪個(gè)行業(yè)招的最少了。
