永洪社区

标题: 设置默认一个月,或者一个很短时间内,数据还是查不出... [打印本页]

作者: 15018397438    时间: 2023-1-31 17:54
标题: 设置默认一个月,或者一个很短时间内,数据还是查不出...
select
t.shop_code,
t.shop_name,
t.area,
t.region,
t.district,
t.item_fst_classify_name,
t.item_sec_classify_name,
t.item_code,
t.item_name,
a.stat_date,
b.item_sale_cnt,
t.item_sale_amount,
t.item_discount_amount,
t.item_return_cnt,
t.item_return_amount,
t.item_sale_order_cnt,
a.order_count,a.business_days
from   ads_mcht_single_item_analysis_di   t
left join
(select sum(order_count) order_count  ,shop_code ,business_days,stat_date
from  ads_biz_order_sale_wi
group by shop_code,stat_date
) as a
on a.shop_code = t.shop_code
left join
(select sum(item_sale_cnt) item_sale_cnt, shop_code,stat_date ,item_code
from   ads_mcht_single_item_analysis_di   where  stat_cycle='W'
group by shop_code,stat_date,item_code) as b
on b.shop_code = t.shop_code






作者: 多读书    时间: 2023-1-31 17:55
sql需要优化
作者: yhdata_ruby    时间: 2023-1-31 18:01
不要有1万条数据以上的SQL数据集和非SQL数据集的join操作
原因:大数据量的SQL数据集和非SQL数据集的join也不能下推到数据库中进行计算,会占用大量的内存以及拖慢报告的整体性能。
数据量一千万以上的表不要进行复杂的联接计算
原因:联接是非常影响性能的,不要“明细表”联接“明细表”,防止系统崩溃。在多个表做联接操作时,要提前知道每个表的数据量,关联条件,对结果集有个预判,避免笛卡尔积的出现,导致系统计算量过大,占用大量系统资源,造成性能下降。
性能优化参考https://www.yonghongtech.com/hel ... D%E4%BC%98%E5%8C%96




欢迎光临 永洪社区 (http://club.yonghongtech.com/) Powered by Discuz! X3.4