---------------------------------------------------
对账查询
select a.oTime,a.Attribution,a.Operator,a.PackageName,olinecount,ISNULL( newcount,0)
as newcount,a.PackagePrice,((olinecount + ISNULL( newcount,0))* a.PackagePrice) as amount
from
(select COUNT(m.Mobile) olinecount,m.oTime,(nb.Province+nb.City) as Attribution,
nb.Operator,m.Package as PackageCode,d.PackageName,d.PackagePrice
from AndroidWS.dbo.AWS_StateAll m LEFT JOIN
AndroidWS.dbo.Aws_Package_Dict d
on m.package=d.PackageCode
LEFT JOIN
BussinessAnalyse.dbo.NumberSegment nb ON SUBSTRING(m.Mobile,0,8)=nb.Segment
GROUP BY m.oTime,nb.Province,nb.City,nb.Operator,m.Package,d.PackageName,d.PackagePrice) a left join
(select COUNT(*) as newcount ,oline,package from (select mobile,package,MIN(oTime) oline from AndroidWS.dbo.AWS_StateAll
group by package,mobile ) mintime group by oline,package )b on a.PackageCode=b.package and a.otime=b.oline
order by oTime desc,a.PackageCode desc
------------------------------------------------------
----------------------------------------------
查看明细
SELECT Convert(varchar(4),YEAR(uu.t1))+'-'+Convert(varchar(2),MONTH(uu.t1)), nb.Province + nb.City AS Attribution, nb.Operator, u.UserHomePhone
AS UserMobile, d.PackageName,
uu.t1 AS OpenTime
FROM (SELECT a.UserID, a.PaCode, a.CreateDate AS t1, b.CreateDate AS t2
FROM (SELECT ID, UserID, CreateDate, Status, PaCode, Remark, SpNumber
FROM dbo.Aws_Pakeage_Order_list
WHERE (Remark = '开通')) AS a LEFT OUTER JOIN
(SELECT ID, UserID, CreateDate, Status, PaCode, Remark,
SpNumber
FROM dbo.Aws_Pakeage_Order_list AS
Aws_Pakeage_Order_list_1
WHERE (Remark = '退订')) AS b ON a.UserID = b.UserID AND
a.PaCode = b.PaCode AND a.CreateDate < b.CreateDate) AS uu LEFT OUTER JOIN
dbo.Aws_Package_Dict AS d ON uu.PaCode = d.PackageCode LEFT OUTER JOIN
dbo.AWS_User AS u ON uu.UserID = u.UserId LEFT OUTER JOIN
BussinessAnalyse.dbo.NumberSegment AS nb ON SUBSTRING(u.UserHomePhone, 0, 8) = nb.Segment
GROUP BY uu.t1, nb.Operator, nb.City, nb.Province, d.PackageName, u.UserHomePhone
ORDER BY uu.t1, nb.Operator, nb.City, nb.Province, d.PackageName, u.UserHomePhone
----------------------------------------------------------------------
----------------------------------------------------------------------
视图
SELECT TOP (100) PERCENT u.UserHomePhone AS UserMobile, uu.PaCode AS PackageCode, uu.t1 AS OpenTime, MIN(uu.t2) AS CloseTime
FROM (SELECT a.UserID, a.PaCode, a.CreateDate AS t1, b.CreateDate AS t2
FROM (SELECT ID, UserID, CreateDate, Status, PaCode, Remark, SpNumber
FROM dbo.Aws_Pakeage_Order_list
WHERE (Remark = '开通')) AS a LEFT OUTER JOIN
(SELECT ID, UserID, CreateDate, Status, PaCode, Remark, SpNumber