日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

mysql累加計算實現(xiàn)方法詳解

瀏覽:93日期:2023-10-14 18:30:57

本文實例講述了mysql累加計算。分享給大家供大家參考,具體如下:

前言

接了一個需求,產(chǎn)品想分析一下用戶增長的曲線。也就是某個時間段的每日總?cè)藬?shù)列表。好對近期活動進行一個效果的評測。這個統(tǒng)計sql還是花了我一小段時間的。mysql統(tǒng)計這個還是需要一定的技巧的。

需求分析 user_id reg_time 1 2019-09-03 2 2019-09-04 3 2019-09-04 4 2019-09-05 5 2019-09-05 6 2019-09-06

假如上表user_info,我們很容易根據(jù)時間維度統(tǒng)計出每日新增的人數(shù)。sql如下:

select reg_time, count(user_id) daily_quantity from user_infogroup by reg_time

通過上面的sql我們很容易得出以下列表:

reg_time daily_quantity 2019-09-03 1 2019-09-04 2 2019-09-05 2 2019-09-06 1

但是這個并不是我們想要的結(jié)果。我們想要的應(yīng)該是 上一天的總?cè)藬?shù)加上今天的凈增長數(shù),以此類推。也就是我們想要:

reg_time daily_quantity 2019-09-03 1 2019-09-04 3 2019-09-05 5 2019-09-06 6

這就有點棘手了,我們需要進行累加計算。我嘗試了自鏈接,函數(shù)等一些操作后還是沒有得到一個正確的結(jié)果。這時想到如果是java代碼處理這個就再合適不過了,我們只要聲明初始值,然后循環(huán)累加就能計算出結(jié)果了:

public static void main(String[] args) { int[] arr = {1, 2, 2, 1}; int[] ints = dailyQuantityArr(0, arr); for (int i : ints) { System.out.println('i = ' + i); } } public static int[] dailyQuantityArr(int base, int[] dailyIncrQuantity) { int[] result = new int[dailyIncrQuantity.length]; // 累加填充 for (int i = 0; i < dailyIncrQuantity.length; i++) { base += dailyIncrQuantity[i]; result[i] = base; } return result; }

上面的偽代碼就可以計算出結(jié)果。當然如果可以的話盡量在java業(yè)務(wù)代碼進行這種復(fù)雜運算。但是產(chǎn)品給出的需求是我們能夠提供一句sql能夠直接在可視化數(shù)據(jù)引擎中得出他要的答案。于是從上面的代碼得出靈感。mysql是否有這種變量呢? 有!當然有。記得很普遍的場景,以前經(jīng)常有業(yè)務(wù)需要我們輸出序號,Oracle是自帶一個偽列rownum,但是mysql沒有。mysql通常通過聲明自增變量來生成序號。拿user_info表舉例子:

select (@i:=@i+1) as rownum, user_id from user_info ,(select @i:=0) as rMysql 用戶變量

mysql 變量分為 局部變量、用戶變量、會話變量、全局變量 。上面的語句我們使用的是用戶變量。用戶變量與數(shù)據(jù)庫連接有關(guān),在連接中聲明的變量,在存儲過程中創(chuàng)建了用戶變量后一直到數(shù)據(jù)庫實例接斷開的時候,變量就會消失。在此連接中聲明的變量無法在另一連接中使用。MySQL中用戶變量不用事前申明,使用的時候以@varname的格式進行聲明。通過:=或者=進行賦值操作。如果需要對外輸出需要用select關(guān)鍵字,而且賦值必須使用:=。

使用Mysql用戶變量進行累加計算

我們學習了用戶變量后就知道如何進行累加計算了,那么user_info表的日累計總?cè)藬?shù)應(yīng)該是這樣的:

select a.reg_time, a.daily, @i:=@i+a.daily as daily_quantity from (select reg_time , count(user_id) daily from user group by reg_time ) a , (select @i:=0) b

查詢的結(jié)果如下,符合邏輯需要。

reg_time daily daily_quantity 2019-09-03 1 1 2019-09-04 2 3 2019-09-05 2 5 2019-09-06 1 6

但是這里有一個小坑,在實際業(yè)務(wù)中@i初始化的時候有可能不為0,比如我們統(tǒng)計上面9月4號到9月6號這時候之前的總?cè)藬?shù)為1 。 這個要特別注意。實際業(yè)務(wù)開發(fā)中如果我們能在邏輯編碼中實現(xiàn)還是建議在邏輯編碼中進行一些復(fù)雜的運算。

總結(jié)

今天我們通過mysql用戶變量解決了一個在sql中累加計算的問題。不知道你有沒有其它好的思路呢?歡迎留言討論。

更多關(guān)于MySQL相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL事務(wù)操作技巧匯總》、《MySQL存儲過程技巧大全》、《MySQL數(shù)據(jù)庫鎖相關(guān)技巧匯總》及《MySQL常用函數(shù)大匯總》

希望本文所述對大家MySQL數(shù)據(jù)庫計有所幫助。

相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
免费毛片在线不卡| 久久久久国产精品一区二区| 日韩欧美一区二区三区免费看| 日韩深夜视频| 成人日韩精品| 影院欧美亚洲| 亚洲美女久久| 麻豆成人91精品二区三区| 成人国产精选| 亚洲精品电影| 青青草91视频| 99久久婷婷| 久久精品 人人爱| 日韩免费高清| 亚洲aa在线| 福利一区二区三区视频在线观看| 欧美精品一二| 国产精品久久久久久av公交车| 日韩大片在线播放| 丝袜a∨在线一区二区三区不卡| 日韩激情综合| 亚洲特色特黄| 久久不见久久见中文字幕免费| 久久精品动漫| 国产精品2023| 亚洲一区二区免费在线观看| 久久不卡日韩美女| 亚洲精品中文字幕乱码| 日韩av一区二区三区四区| 在线视频观看日韩| 国产精品一级在线观看| 欧美理论视频| 91日韩免费| 欧美交a欧美精品喷水| 亚洲精品免费观看| 成人在线免费观看网站| 日韩精品一区二区三区中文字幕| 日韩一区自拍| 欧美黑人做爰爽爽爽| 亚洲精品乱码| 亚洲欧美日韩在线观看a三区| 男人的天堂久久精品| 国产欧美丝祙| 日韩精品五月天| 美国欧美日韩国产在线播放| 精品午夜视频| 美女在线视频一区| 日韩精品导航| 亚洲精品免费观看| 国产精品日韩久久久| 国产精品调教| 国产乱人伦精品一区| 国产精品天天看天天狠| 国产精品一级在线观看| 日韩欧美三区| 久久国内精品自在自线400部| 亚洲天堂av资源在线观看| 日韩高清不卡在线| 国产亚洲精品自拍| 亚洲一级特黄| 黄色av日韩| 天使萌一区二区三区免费观看| 91精品亚洲| 欧美成人午夜| 中文亚洲免费| 婷婷成人基地| 亚洲欧美久久| 亚洲永久精品唐人导航网址| 亚洲有吗中文字幕| 日韩高清不卡一区二区| 国产日韩亚洲| 久久精品国产999大香线蕉| 国产精品久久久久久久久久白浆 | 四虎成人av| 日本韩国欧美超级黄在线观看| 香蕉久久99| 亚洲一级高清| 综合国产在线| 欧美欧美黄在线二区| 国产精品一区毛片| 欧美片第1页综合| 老司机免费视频一区二区| 国产精品v日韩精品v欧美精品网站| 国产另类在线| 国产精品二区不卡| 婷婷色综合网| 日韩激情网站| 国产一区2区在线观看| 欧美黄色网页| 日韩精品一二三四| 国产精品一卡| 国产成人精品一区二区三区免费 | 视频二区不卡| 在线视频亚洲欧美中文| 欧美精品三级在线| 中文在线中文资源| 美女网站一区| 免费av一区| 日韩国产欧美视频| 麻豆国产精品视频| 免费一区二区三区在线视频| 国产精品天天看天天狠| 日韩欧美自拍| 亚洲高清毛片| 日韩区一区二| 国产精品久久久久久久久久白浆 | 亚洲精品1区| 日韩欧美精品一区二区综合视频| 国产伊人久久| 午夜精品免费| 亚洲小说春色综合另类电影| 91福利精品在线观看| 欧美精品91| 婷婷六月综合| 国产探花在线精品一区二区| 国产日韩欧美一区在线| 国产一区二区三区视频在线| 三级欧美韩日大片在线看| 久久激情五月婷婷| 欧美影院三区| 国产精品久久久久久久久久久久久久久 | 成人在线视频中文字幕| 日韩中文字幕亚洲一区二区va在线| 亚洲风情在线资源| 国产日韩视频在线| 影音先锋久久精品| 国产一区成人| 欧美中文一区二区| 欧美少妇精品| 精品久久久亚洲| 国产欧美大片| 欧美日韩一区二区三区四区在线观看| 欧美性感美女一区二区| 国产日韩高清一区二区三区在线| 蜜桃av在线播放| 国产欧美日韩一级| 亚洲人亚洲人色久| 快she精品国产999| 亚洲欧美日韩在线观看a三区 | 日韩精品不卡一区二区| 精品国产欧美日韩一区二区三区| 国产伦理一区| 久久不卡日韩美女| 成午夜精品一区二区三区软件| 国产图片一区| 久久精品女人| 97精品一区二区| 高清日韩欧美| 伊人久久视频| 日韩在线欧美| 色老板在线视频一区二区| yellow在线观看网址| 亚洲人成在线网站| 日韩视频一区| 日本91福利区| 亚洲精品九九| 久久精品资源| 精品国产精品国产偷麻豆| 久久久精品国产**网站| 日韩中文欧美| 欧美日一区二区| 中文字幕日本一区二区| 婷婷成人av| 国产日本精品| 日韩亚洲一区在线| 亚洲资源网站| 国产欧美高清| 亚洲午夜久久久久久尤物| 久久国产福利| 国产a亚洲精品| 手机精品视频在线观看| 蜜臀精品久久久久久蜜臀| 亚洲我射av| 久久国产精品免费一区二区三区| 日韩激情中文字幕| 欧美精品导航| 新版的欧美在线视频| 日韩大片在线| 欧美1区2区3区| 蜜臀精品久久久久久蜜臀| 国产精品一站二站| 欧美日韩精品在线一区| 久久精品免费一区二区三区| 亚洲少妇诱惑| 日本一不卡视频| 久久丁香四色| 亚洲婷婷在线| 国产精品大片免费观看| 中文字幕在线高清| 欧美午夜三级| 免费看日韩精品| 日韩综合在线| 日本欧美一区二区| 久久一区精品| 亚洲免费影院| 久久视频一区| 国产一区二区三区不卡av| 欧美精品影院| 日韩激情一二三区| 亚洲精品动态|