欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何使用mysql完成excel中的數(shù)據(jù)生成

 更新時(shí)間:2017年11月06日 09:01:38   作者:藍(lán)鯨的網(wǎng)站分析筆記  
這篇文章主要介紹了如何使用mysql完成excel中的數(shù)據(jù)生成的相關(guān)資料,需要的朋友可以參考下

Excel是數(shù)據(jù)分析中最常用的工具,本篇文章通過(guò)mysql與excel的功能對(duì)比介紹如何使用mysql完成excel中的數(shù)據(jù)生成,數(shù)據(jù)清洗,預(yù)處理,以及最常見(jiàn)的數(shù)據(jù)分類,數(shù)據(jù)篩選,分類匯總,以及數(shù)據(jù)透視等操作。本篇文章我們介紹第5,6,7部分內(nèi)容,數(shù)據(jù)提取,數(shù)據(jù)篩選以及數(shù)據(jù)匯總及透視。

5,數(shù)據(jù)提取

第五部分是數(shù)據(jù)提取,也是數(shù)據(jù)分析中最常見(jiàn)的一個(gè)工作。下面介紹每一種函數(shù)的使用方法。

按列提取數(shù)據(jù)

#按列提取 SELECT city FROM data1;

按行提取數(shù)據(jù)

#按行提取
SELECT * FROM data1 WHERE city='beijing';

按位置提取數(shù)據(jù)

#按位置提取
SELECT * FROM data1 LIMIT 2,5;

按條件提取數(shù)據(jù)

#按條件提取并計(jì)算
SELECT AVG(price) FROM data1 WHERE city='beijing' AND age<25;

6,數(shù)據(jù)篩選

第六部分為數(shù)據(jù)篩選,使用與,或,非三個(gè)條件配合大于,小于和等于對(duì)數(shù)據(jù)進(jìn)行篩選,并進(jìn)行計(jì)數(shù)和求和。與excel中的篩選功能和countifs和sumifs功能相似。

按條件篩選(與,或,非)

Excel數(shù)據(jù)目錄下提供了“篩選”功能,用于對(duì)數(shù)據(jù)表按不同的條件進(jìn)行篩選。mysql中使用WHERE完成篩選操作,配合sum和count函數(shù)還能實(shí)現(xiàn)excel中sumif和countif函數(shù)的功能。

#數(shù)據(jù)篩選AND
SELECT * FROM data1 WHERE city='shanghai' AND age>30;

#數(shù)據(jù)篩選IN
SELECT * FROM data1 WHERE city IN ('shanghai','beijing');

#數(shù)據(jù)篩選OR
SELECT * FROM data1 WHERE city='shanghai' OR age>30;

#數(shù)據(jù)篩選(不等于)
SELECT * FROM data1 WHERE city !='beijing';

#數(shù)據(jù)篩選like(模糊篩選)
SELECT * FROM data1 WHERE city LIKE 'bei%';

#篩選后計(jì)數(shù) countif
SELECT COUNT(id) AS id_count FROM data1 WHERE city='shanghai'AND age>30;

#篩選后求和 sumtif
SELECT SUM(price) AS price FROM data1 WHERE city='beijing' AND age<30;

#篩選后求均值 averageif
SELECT AVG(price) AS avg_price FROM data1 WHERE city !='beijing';

7,數(shù)據(jù)分類匯總及透視

第七部分是對(duì)數(shù)據(jù)進(jìn)行分類匯總,Excel中使用分類匯總和數(shù)據(jù)透視可以按特定維度對(duì)數(shù)據(jù)進(jìn)行匯總,mysql中使用的主要函數(shù)是GROUP BY和CASE WHEN。下面分別介紹這兩個(gè)函數(shù)的使用方法。

分類匯總

Excel的數(shù)據(jù)目錄下提供了“分類匯總”功能,可以按指定的字段和匯總方式對(duì)數(shù)據(jù)表進(jìn)行匯總。mysql中通過(guò)GROUP BY完成相應(yīng)的操作,并可以支持多級(jí)分類匯總。

GROUP BY是進(jìn)行分類匯總的函數(shù),使用方法很簡(jiǎn)單,制定要分組的列名稱就可以,也可以同時(shí)制定多個(gè)列名稱,GROUP BY按列名稱出現(xiàn)的順序進(jìn)行分組。同時(shí)要制定分組后的匯總方式,常見(jiàn)的是計(jì)數(shù)和求和兩種。

#單列分類匯總
SELECT city,COUNT(id) AS id_count FROM data1 GROUP BY city ORDER BY id_count;

#多列分類匯總
SELECT city,colour,ROUND(SUM(price),2) AS id_count FROM data1 GROUP BY city,colour;

數(shù)據(jù)透視

Excel中的插入目錄下提供“數(shù)據(jù)透視表”功能對(duì)數(shù)據(jù)表按特定維度進(jìn)行匯總。mysql中沒(méi)有直接提供數(shù)據(jù)透視表功能。但通過(guò)CASE WHEN函數(shù)實(shí)現(xiàn)同樣的效果。

數(shù)據(jù)透視表也是常用的一種數(shù)據(jù)分類匯總方式,并且功能上比GROUP BY要強(qiáng)大一些。下面的代碼中設(shè)定city為行字段,colour為列字段,price為值字段,計(jì)算price金額。

#查看原始數(shù)據(jù)表
SELECT * FROM data1;

#使用CASE WHEN進(jìn)行數(shù)據(jù)透視
CREATE VIEW data_Items AS (
 SELECT
 data1.city,
 CASE WHEN colour = "A" THEN price END AS A,
 CASE WHEN colour = "B" THEN price END AS B,
 CASE WHEN colour = "C" THEN price END AS C,
 CASE WHEN colour = "F" THEN price END AS F
 FROM data1
);

#查看結(jié)果
SELECT * FROM data_Items;

#對(duì)字段進(jìn)行求和匯總
CREATE VIEW data1_Extended_Pivot AS (
 SELECT
 city,
 SUM(A) AS A,
 SUM(B) AS B,
 SUM(C) AS C,
 SUM(F) AS F
 FROM data_Items
 GROUP BY city
);

#查看結(jié)果
SELECT * FROM data1_Extended_Pivot;

#對(duì)空值進(jìn)行處理
CREATE VIEW data1_Extended_Pivot_Pretty AS (
 SELECT 
 city, 
 COALESCE(A, 0) AS A, 
 COALESCE(B, 0) AS B, 
 COALESCE(C, 0) AS C,
 COALESCE(F, 0) AS F
 FROM data1_Extended_Pivot
);

#查看數(shù)據(jù)透視結(jié)果
SELECT * FROM data1_Extended_Pivot_Pretty;

相關(guān)文章

  • 詳解讓MySQL和Redis數(shù)據(jù)保持一致的四種策略

    詳解讓MySQL和Redis數(shù)據(jù)保持一致的四種策略

    在分布式系統(tǒng)中,保證Redis和MySQL之間的數(shù)據(jù)一致性是一個(gè)復(fù)雜且重要的問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于讓MySQL和Redis數(shù)據(jù)保持一致的四種策略,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-07-07
  • 如何將MySQL的兩個(gè)表名對(duì)調(diào)

    如何將MySQL的兩個(gè)表名對(duì)調(diào)

    本文介紹怎么將MySQL的兩個(gè)表名調(diào)換,這個(gè)辦法更能確保更換的安全,不出其他的問(wèn)題,有需要的可以參考下。
    2016-08-08
  • MySql5.7.11編譯安裝及修改root密碼的方法小結(jié)

    MySql5.7.11編譯安裝及修改root密碼的方法小結(jié)

    這篇文章主要介紹了MySql5.7.11編譯安裝及修改root密碼的方法小結(jié)的相關(guān)資料,需要的朋友可以參考下
    2016-04-04
  • MySQL中join語(yǔ)句怎么優(yōu)化

    MySQL中join語(yǔ)句怎么優(yōu)化

    本文主要介紹了MySQL中join語(yǔ)句怎么優(yōu)化,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • MySQL如何基于Explain關(guān)鍵字優(yōu)化索引功能

    MySQL如何基于Explain關(guān)鍵字優(yōu)化索引功能

    這篇文章主要介紹了MySQL如何基于Explain關(guān)鍵字優(yōu)化索引功能,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • MySQL字符編碼設(shè)置方法

    MySQL字符編碼設(shè)置方法

    這篇文章主要介紹了MySQL字符編碼設(shè)置方法的相關(guān)資料,需要的朋友可以參考下
    2016-05-05
  • MySQL DISTINCT 的基本實(shí)現(xiàn)原理詳解

    MySQL DISTINCT 的基本實(shí)現(xiàn)原理詳解

    這篇文章主要介紹了MySQL DISTINCT 的基本實(shí)現(xiàn)原理詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • mysql ON DUPLICATE KEY UPDATE語(yǔ)句示例

    mysql ON DUPLICATE KEY UPDATE語(yǔ)句示例

    本文介紹一下關(guān)于mysql中INSERT INTO… ON DUPLICATE KEY UPDATE用法
    2013-11-11
  • Mysql的水平分表與垂直分表的講解

    Mysql的水平分表與垂直分表的講解

    今天小編就為大家分享一篇關(guān)于Mysql的水平分表與垂直分表的講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • MySQL?數(shù)據(jù)庫(kù)如何實(shí)現(xiàn)存儲(chǔ)時(shí)間

    MySQL?數(shù)據(jù)庫(kù)如何實(shí)現(xiàn)存儲(chǔ)時(shí)間

    這篇文章主要介紹了MySQL?數(shù)據(jù)庫(kù)如何實(shí)現(xiàn)存儲(chǔ)時(shí)間,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03

最新評(píng)論