成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL騷操作,一條SQL 統(tǒng)計(jì)近 7天、30天、全部的訂單量

數(shù)據(jù)庫 其他數(shù)據(jù)庫
我用了一個(gè) 4w 多訂單數(shù)據(jù)的用戶測試了一下,執(zhí)行時(shí)間是 0.5s ,問題主要出在臨時(shí)表,一旦數(shù)據(jù)量起來就不太行,但是暫時(shí)沒接數(shù)倉就先這樣頂著了,就前期用用。

你好,我是yes。

最近在搞新項(xiàng)目,一直在迭代,這期接到個(gè)新需求,統(tǒng)計(jì)商戶近 1天、7天、30天、全部的訂單量。

一般而言這種統(tǒng)計(jì)類需求都不會(huì)直接查庫,而是交由數(shù)倉同學(xué)統(tǒng)計(jì),然后回寫到業(yè)務(wù)表或者業(yè)務(wù)同學(xué)直接讀數(shù)倉表。

但是由于這是新項(xiàng)目,還沒接數(shù)倉,并且量還沒起來,所以這期就將就著先直接查庫實(shí)現(xiàn)。

那么問題來了,這 SQL 咋寫呢?

直接看簡化的表結(jié)構(gòu):

CREATE TABLE order (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `order_no` varchar(32) NOT NULL COMMENT '訂單號',
  `user_id` bigint NOT NULL COMMENT '用戶id',
  `create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間',
  PRIMARY KEY (`id`) USING BTREE,
  KEY `idx_userid_createtime` (`user_id`,`create_time`) USING BTREE
)

今天是 2023-09-12 ,如果我們要統(tǒng)計(jì)近 1 天的訂單量,那么 SQL 很簡單:

SELECT count(*) FROM order where user_id = 'xx' and time_create >'2023-09-12 00:00:00'

同理 7天、30天

SELECT count(*) FROM order where user_id = 'xx' and time_create >'2023-09-06 00:00:00'

SELECT count(*) FROM order where user_id = 'xx' and time_create >'2023-08-14 00:00:00'

還有全部

SELECT count(*) FROM order where user_id = 'xx'

但是這樣一來需要查四次數(shù)據(jù)庫!能不能整個(gè)花活,把它壓縮成一條 SQL 一次性查詢呢?

動(dòng)腦瓜子刮了刮,還真行!看下面這條 SQL:

SELECT statistics, count(*) from (
SELECT CASE 
 WHEN time_create > '2023-09-12 00:00:00' THEN '1'
 WHEN time_create > '2023-09-06 00:00:00' THEN '7'
 WHEN time_create > '2023-08-14 00:00:00' THEN '30'
 ELSE
  'all'
END as statistics
from `order` where user_id = 'xxx'
) temp GROUP BY statistics;

執(zhí)行結(jié)果如下:

思路就是利用 case when 先給對應(yīng)時(shí)間數(shù)據(jù)打個(gè)標(biāo)記,存放在臨時(shí)表,然后通過 group by 統(tǒng)計(jì)。

我用了一個(gè) 4w 多訂單數(shù)據(jù)的用戶測試了一下,執(zhí)行時(shí)間是 0.5s ,問題主要出在臨時(shí)表,一旦數(shù)據(jù)量起來就不太行,但是暫時(shí)沒接數(shù)倉就先這樣頂著了,就前期用用。

突然回想起前公司那時(shí)候沒招數(shù)據(jù)同學(xué),讓我去整 BI, 那 SQL 寫的天花亂墜,感覺把一輩子的 SQL 都寫完了,SQL Boy 也不容易啊。

責(zé)任編輯:武曉燕 來源: yes的練級攻略
相關(guān)推薦

2025-05-20 00:00:00

2025-05-12 08:27:25

2024-07-29 09:49:00

SQLMySQL執(zhí)行

2021-04-16 07:04:53

SQLOracle故障

2023-03-26 22:42:02

SQL關(guān)聯(lián)索引

2022-02-11 14:43:53

SQL語句C/S架構(gòu)

2011-02-23 13:26:01

SQL查詢優(yōu)化

2020-07-01 09:07:52

SQL索引語句

2024-12-17 06:20:00

MySQLSQL語句數(shù)據(jù)庫

2020-04-17 14:16:10

SQL數(shù)據(jù)庫HTTP

2022-05-31 13:58:09

MySQL查詢語句

2023-02-26 23:31:01

SQL數(shù)據(jù)庫

2024-01-03 17:42:32

SQL數(shù)據(jù)庫

2019-04-28 09:56:15

程序員互聯(lián)網(wǎng)脫發(fā)

2021-02-09 09:50:21

SQLOracle應(yīng)用

2021-06-07 08:37:03

SQL 查詢語句

2020-10-26 08:02:28

SQL慢查詢索引

2015-03-25 19:15:08

2023-11-01 16:50:58

2021-08-03 08:41:18

SQLMysql面試
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 中文字幕 国产 | 中文字幕一区二区三区精彩视频 | 国产精品美女一区二区 | 日韩在线小视频 | 蜜臀网 | 亚洲国产成人精品久久久国产成人一区 | 午夜精品一区二区三区在线播放 | 国产精品一区二区三区99 | 羞羞视频网站免费看 | 亚洲精品播放 | 国产日韩欧美在线观看 | 亚洲在线| 一久久久 | 二区久久| 一级毛片在线播放 | 色综合99 | 国产成人精品一区二区 | 午夜免费视频观看 | 国产成人福利视频在线观看 | 国产激情网 | 精品久久久久久亚洲综合网站 | 国产精品自在线 | 毛片高清| 国产亚洲人成a在线v网站 | 日本免费在线观看视频 | 成人三级视频 | 九热在线 | 91精品国产综合久久小仙女图片 | 国户精品久久久久久久久久久不卡 | 亚洲精品一区二区在线观看 | 亚洲一区视频在线 | 欧美aaa一级片 | 欧美一级免费 | 九色在线观看 | 亚洲一区二区三区在线观看免费 | 午夜视频导航 | japanhdxxxx裸体| av天天干 | 韩日一区二区三区 | 欧美亚洲国产日韩 | 欧美三级视频在线观看 |