我正在尝试生成一个基于sql查询的报告,该报告允许插入日期范围,以便选择可用的数据。
我遇到的问题是,当我尝试这个时,我收到错误:
必须声明标量变量“@DateFrom”。
我使用的sql如下:
SELECT
[Cost Category ID]
FROM
SRVS.dbo.PACostCategories
WHERE
(@DateFrom IS NULL OR alias.myDate>= @DateFrom) AND
(@DateTo IS NULL OR alias.MyDate < DATEADD(d, 1, @DateTo))
任何能让我朝着正确方向前进的指示都非常感激。
答案 0 :(得分:4)
在尝试运行查询之前,必须声明变量。您需要执行以下操作才能使其正常工作:
DECLARE @DateFrom datetime
DECLARE @DateTo datetime
SET @DateFrom = yourDateFromValue
SET @@DateTo= yourDateToValue
SELECT [Cost Category ID]
FROM SRVS.dbo.PACostCategories
WHERE (@DateFrom IS NULL OR alias.myDate>= @DateFrom) AND
(@DateTo IS NULL OR alias.MyDate < DATEADD(d, 1, @DateTo))
答案 1 :(得分:1)
您需要的唯一方向和答案 - 为查询提供变量。
或者您在调用查询时遇到拼写错误。