select

創(chuàng)新互聯(lián)科技有限公司專業(yè)互聯(lián)網(wǎng)基礎服務商,為您提供服務器機柜租用,高防服務器,成都IDC機房托管,成都主機托管等互聯(lián)網(wǎng)服務。
table.year,
table.month,
table.day
from
(SELECT
year(time) year,
month(time) month,
day(time) day
FROM
table) table
group by table.year,table.month,table.day
order BY table.year,table.month,table.day desc;
望采納,有疑問或是有更好寫法,請多交流
MySQL單表數(shù)據(jù)量,建議不要超過2000W行,否則會對性能有較大影響。最近接手了一個項目,單表數(shù)據(jù)超7000W行,一條簡單的查詢語句等了50多分鐘都沒出結(jié)果,實在是難受,最終,我們決定用分區(qū)表。
一般的表(innodb)創(chuàng)建后只有一個 idb 文件:
創(chuàng)建按月份分區(qū)的分區(qū)表,注意!除了常規(guī)主鍵外,月份字段(用來分區(qū)的字段)也必須是主鍵:
當刪除表時,該表的所有分區(qū)文件都會被刪除
1.近n個月?
不廢話 直接上sql
SELECT
DATE_FORMAT( @cdate := DATE_ADD( @cdate, INTERVAL - 1 MONTH ), '%Y-%m' ) AS cmonth
FROM
( SELECT @cdate := DATE_ADD( '2020-7-1', INTERVAL + 1 MONTH ) FROM information_schema.CHARACTER_SETS ) t0
LIMIT 100
注意?information_schema.CHARACTER_SETS這個表是mysql系統(tǒng)表,可以取到的最大月數(shù)和這個表的數(shù)量有關(guān),如果又更多的時間要選,可以查詢其他表,數(shù)據(jù)量不要太大,太大會影響查詢效率
2 同理 上近n天
SELECT
@cdate := DATE_ADD( @cdate, INTERVAL - 1 DAY )AS DAYS
FROM
( SELECT @cdate := DATE_ADD( '2020-7-1', INTERVAL + 1 DAY ) FROM information_schema.CHARACTER_SETS ) t0
LIMIT 100
可以加個時間維度表,以時間維度表為主表!(id,month)id 是和你的表左連接,month是1到12月,一樓說的幾個方法!應該不好實現(xiàn)的吧?不用寫存儲過程那么復雜!舉個例子
select a.rq,
b.xssr
from date_table a left jion table1 b
on a.id=b.id
網(wǎng)站題目:mysql怎么按月份分組 mysql按月份查詢并匯總
標題鏈接:http://www.chinadenli.net/article16/dddhdgg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供建站公司、定制開發(fā)、網(wǎng)站營銷、標簽優(yōu)化、面包屑導航、軟件開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)