Commit 631bd763 by wukaiqiang

销售汇总增加总计 小计查询

parent 086633d6
...@@ -32,7 +32,332 @@ ...@@ -32,7 +32,332 @@
result.decAmount AS decAmount result.decAmount AS decAmount
FROM FROM
( (
SELECT
'总计' as station,
'--' as dinasType,
SUM(salesSummary.saleDealAmount) as saleDealAmount,
SUM(salesSummary.saleAmount) as saleAmount,
'0.00' as avgAmount,
janAmount.janAmount1 as janAmount,
febAmount.febAmount1 as febAmount,
marAmount.marAmount1 as marAmount,
aprAmount.aprAmount1 as aprAmount,
mayAmount.mayAmount1 as mayAmount,
junAmount.junAmount1 as junAmount,
julAmount.julAmount1 as julAmount,
augAmount.augAmount1 as augAmount,
septAmount.septAmount1 as septAmount,
octAmount.octAmount1 as octAmount,
novAmount.novAmount1 as novAmount,
decAmount.decAmount1 as decAmount,
salesSummary.dealYear AS dealYear
FROM
SalesSummary AS salesSummary
LEFT JOIN Station AS station ON station.id = salesSummary.station
LEFT JOIN DinasType AS dinasType ON dinasType.id = salesSummary.dinasType
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS janAmount1 ,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 1
GROUP BY salesSummary1.station
) AS janAmount ON janAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS febAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 2
GROUP BY salesSummary1.station
) AS febAmount ON febAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS marAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 3
GROUP BY salesSummary1.station
) AS marAmount ON marAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS aprAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 4
GROUP BY salesSummary1.station
) AS aprAmount ON aprAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS mayAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 5
GROUP BY salesSummary1.station
) AS mayAmount ON mayAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS junAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 6
GROUP BY salesSummary1.station
) AS junAmount ON junAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS julAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 7
GROUP BY salesSummary1.station
) AS julAmount ON julAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS augAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 8
GROUP BY salesSummary1.station
) AS augAmount ON augAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS septAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 9
GROUP BY salesSummary1.station
) AS septAmount ON septAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS octAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 10
GROUP BY salesSummary1.station
) AS octAmount ON octAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS novAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 11
GROUP BY salesSummary1.station
) AS novAmount ON novAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS decAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 12
GROUP BY salesSummary1.station
) AS decAmount ON decAmount.dealYear1 = salesSummary.dealYear
GROUP BY salesSummary.dealYear
UNION ALL
SELECT
station.stationName as station,
'小计' as dinasType,
SUM(salesSummary.saleDealAmount) as saleDealAmount,
SUM(salesSummary.saleAmount) as saleAmount,
'0.00' as avgAmount,
janAmount.janAmount1 as janAmount,
febAmount.febAmount1 as febAmount,
marAmount.marAmount1 as marAmount,
aprAmount.aprAmount1 as aprAmount,
mayAmount.mayAmount1 as mayAmount,
junAmount.junAmount1 as junAmount,
julAmount.julAmount1 as julAmount,
augAmount.augAmount1 as augAmount,
septAmount.septAmount1 as septAmount,
octAmount.octAmount1 as octAmount,
novAmount.novAmount1 as novAmount,
decAmount.decAmount1 as decAmount,
salesSummary.dealYear AS dealYear
FROM
SalesSummary AS salesSummary
LEFT JOIN Station AS station ON station.id = salesSummary.station
LEFT JOIN DinasType AS dinasType ON dinasType.id = salesSummary.dinasType
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS janAmount1 ,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 1
GROUP BY salesSummary1.station
) AS janAmount ON janAmount.station1 = salesSummary.station
AND janAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS febAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 2
GROUP BY salesSummary1.station
) AS febAmount ON febAmount.station1 = salesSummary.station
AND febAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS marAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 3
GROUP BY salesSummary1.station
) AS marAmount ON marAmount.station1 = salesSummary.station
AND marAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS aprAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 4
GROUP BY salesSummary1.station
) AS aprAmount ON aprAmount.station1 = salesSummary.station
AND aprAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS mayAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 5
GROUP BY salesSummary1.station
) AS mayAmount ON mayAmount.station1 = salesSummary.station
AND mayAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS junAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 6
GROUP BY salesSummary1.station
) AS junAmount ON junAmount.station1 = salesSummary.station
AND junAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS julAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 7
GROUP BY salesSummary1.station
) AS julAmount ON julAmount.station1 = salesSummary.station
AND julAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS augAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 8
GROUP BY salesSummary1.station
) AS augAmount ON augAmount.station1 = salesSummary.station
AND augAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS septAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 9
GROUP BY salesSummary1.station
) AS septAmount ON septAmount.station1 = salesSummary.station
AND septAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS octAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 10
GROUP BY salesSummary1.station
) AS octAmount ON octAmount.station1 = salesSummary.station
AND octAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS novAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 11
GROUP BY salesSummary1.station
) AS novAmount ON novAmount.station1 = salesSummary.station
AND novAmount.dealYear1 = salesSummary.dealYear
LEFT JOIN (
SELECT
salesSummary1.station AS station1 ,
SUM( salesSummary1.saleAmount ) AS decAmount1,
salesSummary1.dealYear AS dealYear1
FROM
SalesSummary AS salesSummary1
WHERE
salesSummary1.dealMonth = 12
GROUP BY salesSummary1.station
) AS decAmount ON decAmount.station1 = salesSummary.station
AND decAmount.dealYear1 = salesSummary.dealYear
GROUP BY salesSummary.station
UNION ALL
SELECT SELECT
station.stationName as station, station.stationName as station,
dinasType.dinasTypeName as dinasType, dinasType.dinasTypeName as dinasType,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment