【发布时间】:2016-10-16 19:06:11
【问题描述】:
我正在做一个多层次营销项目,这是我的表格结构
CREATE TABLE [Changu143Aa].[UserSalesVolume]
(
[ID] [bigint] IDENTITY(1,1) NOT NULL,
[UserID] [bigint] NULL,
[PSV] [decimal](18, 2) NULL DEFAULT ((0)),
[GSV] [decimal](18, 2) NULL DEFAULT ((0)),
[DateAdded] [datetime] NULL,
[Pin] [uniqueidentifier] NULL
)
如果当前日期在 1-15 日和 16-30/31 日之间(如果日期属于 16-30/),我需要显示销量,因为这是他从当月 1-15 日获得的销量总和第 31 次我写了一个查询,但它不能正常工作,任何人都可以帮助我
IF OBJECT_ID('tempdb..#TPersonalSalesVol') IS NOT NULL
DROP TABLE #TPersonalSalesVol
IF OBJECT_ID('tempdb..#MPersonalSalesVol') IS NOT NULL
DROP TABLE #MPersonalSalesVol
CREATE TABLE #TPersonalSalesVol
(
TotalPSV Decimal(18, 2),
TotalGSV Decimal(18, 2),
PSV Decimal(18, 2),
GSV Decimal(18, 2),
MUserID bigint
)
CREATE TABLE #MPersonalSalesVol
(
PSV Decimal(18, 2),
GSV Decimal(18, 2),
MUserID bigINT
)
INSERT INTO #MPersonalSalesVol (PSV, GSV, MUserID)
SELECT
SUM(at.PersonalSalesVolume) as PSV,
SUM(at.GroupSalesVolume) as GSV,at.UserID
FROM
UserSalesVolume AS at
WHERE
DATEPART(month,DateAdded) = DATEPART(month,GetDate())
AND DATEPART(day,DateAdded)/16 = DATEPART(day,GetDate())/16
GROUP BY
at.UserID, CONVERT(DATE, at.DateAdded, 101)
INSERT INTO #TPersonalSalesVol (TotalPSV, TotalGSV, PSV, GSV, MUserID)
SELECT
SUM(at.PersonalSalesVolume) as TotalPSV,
SUM(at.GroupSalesVolume) as TotalGSV,
t.PSV, t.GSV, at.UserID
FROM
#MPersonalSalesVol AS t
JOIN
UserSalesVolume AS at ON at.UserID = t.MUserID
GROUP BY
at.UserID, t.PSV, t.GSV
SELECT *
FROM #TPersonalSalesVol
【问题讨论】:
-
存储过程对你有用吗?
标签: sql sql-server-2008