Compare commits
2 Commits
5b25cb3766
...
fde5cfe3b2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fde5cfe3b2 | ||
|
|
70e5ed81f6 |
@@ -87,10 +87,10 @@
|
||||
DOSAGEID,
|
||||
CUSTOMID,
|
||||
SALERID,
|
||||
SUM( MONTHSAQTY ) AS THISSAQTY,
|
||||
SUM( MONTHSAMONEY ) AS THISSAMONEY,
|
||||
SUM( MONTHCOST) as THISCOST,
|
||||
SUM( MONTHPROFIT ) AS THISPROFIT
|
||||
SUM( MONTHSAQTY ) AS THISSAQTY, -- 本年销量
|
||||
SUM( MONTHSAMONEY ) AS THISSAMONEY, -- 本年销售金额
|
||||
SUM( MONTHCOST) as THISCOST, -- 本年毛利额
|
||||
SUM( MONTHPROFIT ) AS THISPROFIT -- 本年毛利额
|
||||
FROM
|
||||
yunji_gr_bi_sa_agg
|
||||
GROUP BY
|
||||
@@ -165,11 +165,11 @@
|
||||
UPDATE yunji_gr_bi_sa_agg
|
||||
SET
|
||||
MONTHPROFITRATE = CASE WHEN MONTHSAMONEY = 0 or MONTHSAMONEY is null THEN
|
||||
100 ELSE MONTHPROFIT/ MONTHSAMONEY * 100 END,
|
||||
IF(MONTHPROFIT > 0, 100, 0) ELSE MONTHPROFIT/ MONTHSAMONEY * 100 END,
|
||||
THISPROFITRATE = CASE WHEN THISSAMONEY = 0 or THISSAMONEY is null THEN
|
||||
100 ELSE THISPROFIT/ THISSAMONEY * 100 END,
|
||||
IF(THISPROFIT > 0, 100, 0) ELSE THISPROFIT/ THISSAMONEY * 100 END,
|
||||
LASTPROFITRATE =CASE WHEN LASTSAMONEY = 0 or LASTSAMONEY is null THEN
|
||||
100 ELSE LASTPROFIT/ LASTSAMONEY * 100 END;
|
||||
IF(LASTPROFIT > 0, 100, 0) ELSE LASTPROFIT/ LASTSAMONEY * 100 END;
|
||||
|
||||
|
||||
</update>
|
||||
@@ -229,8 +229,8 @@
|
||||
USEYEAR,
|
||||
USEMONTH
|
||||
) b ON b.USEYEAR = a.USEYEAR
|
||||
SET a.LASTSAMONEYSHARE = COALESCE (ROUND( CASE WHEN LASTSAMONEY_SUM = 0 or LASTSAMONEY_SUM is null THEN 1 ELSE a.LASTSAMONEY/b.LASTSAMONEY_SUM * 100 END, 2), 0 ),
|
||||
a.LASTPROFITSHARE = COALESCE (ROUND( CASE WHEN LASTPROFIT_SUM = 0 or LASTPROFIT_SUM is null THEN 1 ELSE a.LASTPROFIT/b.LASTPROFIT_SUM * 100 END, 2), 0 );
|
||||
SET a.LASTSAMONEYSHARE = COALESCE (ROUND( CASE WHEN LASTSAMONEY_SUM = 0 or LASTSAMONEY_SUM is null THEN IF(a.LASTSAMONEY > 0, 100, 0) ELSE a.LASTSAMONEY/b.LASTSAMONEY_SUM * 100 END, 2), 0 ),
|
||||
a.LASTPROFITSHARE = COALESCE (ROUND( CASE WHEN LASTPROFIT_SUM = 0 or LASTPROFIT_SUM is null THEN IF(a.LASTPROFIT > 0, 100, 0) ELSE a.LASTPROFIT/b.LASTPROFIT_SUM * 100 END, 2), 0 );
|
||||
|
||||
</update>
|
||||
<update id="updateComplexCalculate5">
|
||||
@@ -240,18 +240,14 @@
|
||||
UPDATE yunji_gr_bi_sa_agg
|
||||
SET
|
||||
SAMONEYGROWTH = CASE
|
||||
WHEN ( LASTSAMONEY = 0 OR LASTSAMONEY IS NULL )
|
||||
AND THISSAMONEY IS NOT NULL THEN
|
||||
100
|
||||
WHEN THISPROFIT IS NULL THEN
|
||||
0 ELSE ( THISSAMONEY - LASTSAMONEY )/ LASTSAMONEY * 100
|
||||
WHEN ( LASTSAMONEY = 0 OR LASTSAMONEY IS NULL ) AND THISSAMONEY IS NOT NULL
|
||||
THEN IF((THISSAMONEY - LASTSAMONEY) > 0, 100, 0)
|
||||
ELSE ( THISSAMONEY - LASTSAMONEY )/ LASTSAMONEY * 100
|
||||
END,
|
||||
PROFITGROWTH = CASE
|
||||
WHEN ( LASTPROFIT = 0 OR LASTPROFIT IS NULL )
|
||||
AND THISPROFIT IS NOT NULL THEN
|
||||
100
|
||||
WHEN THISPROFIT IS NULL THEN
|
||||
0 ELSE ( THISPROFIT - LASTPROFIT )/ LASTPROFIT * 100
|
||||
WHEN ( LASTPROFIT = 0 OR LASTPROFIT IS NULL ) AND THISPROFIT IS NOT NULL
|
||||
THEN IF((THISSAMONEY - LASTSAMONEY) > 0, 100, 0)
|
||||
ELSE ( THISPROFIT - LASTPROFIT )/ LASTPROFIT * 100
|
||||
END,
|
||||
PROFITCHANGE = ( THISPROFIT - LASTPROFIT);
|
||||
</update>
|
||||
|
||||
Reference in New Issue
Block a user