最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql如何分組統(tǒng)計(jì)并求出百分比

 更新時(shí)間:2022年10月11日 16:59:11   作者:木木-木  
這篇文章主要介紹了mysql如何分組統(tǒng)計(jì)并求出百分比,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

mysql分組統(tǒng)計(jì)并求出百分比

1、mysql 分組統(tǒng)計(jì)并列出百分比

SELECT
?? ?point_id,
?? ?pname_cn,
?? ?play_num,
?? ?round( play_num / total * 100, 2 ) as `ratio`
FROM
?? ?(
?? ?SELECT
?? ??? ?*?
?? ?FROM
?? ??? ?( SELECT?
?? ??? ??? ??? ?ANY_VALUE ( `point_id` ) AS point_id,?
?? ??? ??? ??? ?ANY_VALUE ( `pname_cn` ) AS pname_cn, ?
?? ??? ??? ??? ?sum( `play` ) AS play_num ?
?? ??? ??? ?FROM?
?? ??? ??? ??? ?`dt_collect_antique` WHERE`add_time` BETWEEN '2020-07-02' AND '2020-07-05' ?GROUP BY `point_id` ?) t1
?? ??? ??? ?INNER JOIN?
?? ??? ??? ?( SELECT?
?? ??? ??? ??? ??? ?sum( `play` ) AS total?
?? ??? ??? ??? ?FROM?
?? ??? ??? ??? ??? ?`dt_collect_antique` WHERE`add_time` BETWEEN '2020-07-02' AND '2020-07-05'
?? ??? ??? ?) t2 ON 1 = 1?
?? ?) t
?? ??
ORDER BY
?? ?`play_num` DESC?
?? ?LIMIT 0, 10;

--查出符合條件并且分組, 統(tǒng)計(jì)出每組數(shù)量

SELECT?
?? ?ANY_VALUE ( `point_id` ) AS point_id,?
?? ?ANY_VALUE ( `pname_cn` ) AS pname_cn, ?
?? ?sum(`like`) as like_num
FROM?
?? ?`dt_collect_antique` WHERE`add_time` BETWEEN '2020-07-02' AND '2020-07-05' ?GROUP BY `point_id` ?) t1

--查出符合條件,總數(shù)量

(SELECT?
?? ?sum( `play` ) AS total?
FROM?
?? ?`dt_collect_antique` WHERE`add_time` BETWEEN '2020-07-02' AND '2020-07-05'
) t2

2、按年齡段分組,并求個(gè)年齡段占比

SELECT
? ? age_group,
? ? age_total,
? ? round( age_total / total * 100, 2 ) as `ratio`
FROM
?? ?(
? ??? ?SELECT
? ? ? ? *?
? ? FROM
? ? ?? ?( SELECT?
? ? ? ??? ??? ?SUM(total) AS age_total,
? ? ? ??? ??? ??? ?CASE
? ? ? ? ? ? ? ? ?? ?WHEN age >= 0 AND age < 18 THEN '18歲以下'
?? ? ? ? ? ? ? ? ? ?WHEN age >= 18 AND age <= 25 THEN '18歲到25歲'
?? ? ? ? ? ? ? ? ? ?WHEN age >= 26 AND age <= 35 THEN '26歲到35歲'
?? ? ? ? ? ? ? ? ? ?WHEN age >= 36 AND age <= 45 THEN '36歲到45歲'
?? ? ? ? ? ? ? ? ? ?WHEN age >= 46 AND age <= 60 THEN '46歲到60歲'
? ? ? ? ? ??? ??? ?ELSE '60歲以上' END
? ? ? ? ? ? ? ? AS age_group FROM dt_collect_age WHERE `add_time` BETWEEN ".$time[0]." AND ".$time[1]." GROUP BY age_group
? ? ?? ?) t1
? ? ? ? INNER JOIN?
? ? ? ? ?? ?( SELECT?
? ? ? ? ? ??? ??? ?SUM( `total` ) AS total?
? ? ? ? ? ??? ?FROM?
? ? ? ? ? ? ?? ?`dt_collect_age` WHERE `add_time` BETWEEN ".$time[0]." AND ".$time[1]."
? ? ? ? ? ? ) t2 ON 1 = 1?
? ??? ??? ?) t
? ? LIMIT 0, 6;

mysql求百分比的幾種方法

函數(shù)介紹

1、ROUND(X,D)和ROUND(X)

round函數(shù)用于數(shù)據(jù)的四舍五入,x指要處理的數(shù),d是指保留幾位小數(shù)

round(x)  ,其實(shí)就是 round(x,0)

d可以是負(fù)數(shù),代表指定小數(shù)點(diǎn)左邊的d位整數(shù)位為0,同時(shí)小數(shù)位均為0

2、FORMAT(X,D)

提供數(shù)據(jù)內(nèi)容格式化功能,可以格式化數(shù)據(jù)為整數(shù)或者浮點(diǎn)數(shù),能四舍五入

D為負(fù)數(shù)時(shí),按0處理

3、LEFT(str,len)

left函數(shù)是一個(gè)字符串函數(shù),它返回具有指定長(zhǎng)度的字符串的左邊部分,str為要處理的字符串,len為長(zhǎng)度

left函數(shù)為字符串截取,不能四舍五入

4、CONCAT(str1,str2,...)

concat函數(shù)用于將多個(gè)字符串連接成一個(gè)字符串

利用round,format,left與concat求百分比

注意:使用left按位截取百分比時(shí),位數(shù)要根據(jù)需要合理設(shè)置,否則容易出現(xiàn)意外BUG

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • mysql分區(qū)表學(xué)習(xí)之日期分區(qū)

    mysql分區(qū)表學(xué)習(xí)之日期分區(qū)

    這篇文章主要給大家介紹了關(guān)于mysql分區(qū)表學(xué)習(xí)之日期分區(qū)的相關(guān)資料,分區(qū)是一種表的設(shè)計(jì)模式,通俗地講表分區(qū)是將一大表,根據(jù)條件分割成若干個(gè)小表,需要的朋友可以參考下
    2023-08-08
  • MySQL如何設(shè)置動(dòng)態(tài)創(chuàng)建時(shí)間(create_time)和修改時(shí)間(update_time)

    MySQL如何設(shè)置動(dòng)態(tài)創(chuàng)建時(shí)間(create_time)和修改時(shí)間(update_time)

    本文主要介紹了MySQL如何設(shè)置動(dòng)態(tài)創(chuàng)建時(shí)間(create_time)和修改時(shí)間(update_time),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • mysql 5.5 開啟慢日志slow log的方法(log_slow_queries)

    mysql 5.5 開啟慢日志slow log的方法(log_slow_queries)

    MySQL中提供了一個(gè)慢查詢的日志記錄功能,可以把查詢SQL語(yǔ)句時(shí)間大于多少秒的語(yǔ)句寫入慢查詢?nèi)罩?,日常維護(hù)中可以通過(guò)慢查詢?nèi)罩镜挠涗浶畔⒖焖贉?zhǔn)確地判斷問(wèn)題所在
    2016-05-05
  • MYSQL中統(tǒng)計(jì)查詢結(jié)果總行數(shù)的便捷方法省去count(*)

    MYSQL中統(tǒng)計(jì)查詢結(jié)果總行數(shù)的便捷方法省去count(*)

    查看手冊(cè)后發(fā)現(xiàn)SQL_CALC_FOUND_ROWS關(guān)鍵詞的作用是在查詢時(shí)統(tǒng)計(jì)滿足過(guò)濾條件后的結(jié)果的總數(shù)(不受 Limit 的限制)具體使用如下,感興趣的朋友可以學(xué)習(xí)下
    2013-07-07
  • MySQL8自增主鍵變化圖文詳解

    MySQL8自增主鍵變化圖文詳解

    眾所周知MySQL 的主鍵可以是自增的,下面這篇文章主要給大家介紹了關(guān)于MySQL8自增主鍵變化的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • MySQL實(shí)現(xiàn)數(shù)據(jù)批量更新功能詳解

    MySQL實(shí)現(xiàn)數(shù)據(jù)批量更新功能詳解

    最近需要批量更新大量數(shù)據(jù),習(xí)慣了寫sql,所以還是用sql來(lái)實(shí)現(xiàn),下面這篇文章主要給大家總結(jié)介紹了關(guān)于MySQL批量更新的方式,需要的朋友可以參考下
    2023-02-02
  • MySQL性能優(yōu)化之Open_Table配置參數(shù)的合理配置建議

    MySQL性能優(yōu)化之Open_Table配置參數(shù)的合理配置建議

    這篇文章主要介紹了MySQL性能優(yōu)化之Open_Table配置參數(shù)的合理配置建議,在MySQL數(shù)據(jù)庫(kù)中,Opened_tables表示打開過(guò)的表數(shù)量,需要的朋友可以參考下
    2014-07-07
  • MYSQL中binlog優(yōu)化的一些思考匯總

    MYSQL中binlog優(yōu)化的一些思考匯總

    這篇文章主要給大家介紹了關(guān)于MYSQL中binlog優(yōu)化的一些思考,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • SQL函數(shù)實(shí)現(xiàn)Group_concat用法

    SQL函數(shù)實(shí)現(xiàn)Group_concat用法

    GROUP_CONCAT用于將每個(gè)分組內(nèi)的值連接成一個(gè)字符串,并通過(guò)指定的分隔符進(jìn)行分隔,本文主要介紹了SQL函數(shù)實(shí)現(xiàn)Group_concat用法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-08-08
  • mysql創(chuàng)建學(xué)生表、課程表及學(xué)生選課表詳細(xì)代碼

    mysql創(chuàng)建學(xué)生表、課程表及學(xué)生選課表詳細(xì)代碼

    這篇文章主要給大家介紹了mysql創(chuàng)建學(xué)生表、課程表及學(xué)生選課表的相關(guān)資料,學(xué)生、課程以及成績(jī)的增刪改查都是建立在連接數(shù)據(jù)庫(kù)的基礎(chǔ)之上,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-12-12

最新評(píng)論

湘阴县| 夏津县| 彰武县| 神农架林区| 阜新| 招远市| 曲松县| 河东区| 竹溪县| 丹江口市| 石门县| 铜梁县| 响水县| 通化县| 历史| 凉山| 伊宁市| 巴青县| 武穴市| 通州市| 汉阴县| 弥渡县| 缙云县| 吐鲁番市| 巴里| 榆中县| 淮南市| 湄潭县| 航空| 吉首市| 宽甸| 吉安县| 克东县| 雷州市| 阜新| 闽侯县| 安西县| 灵宝市| 类乌齐县| 湖南省| 娱乐|