我在SQL Server 2012中获得了以下完全可用的查询:
SELECT
iif(((DATEPART(dw, MeasurementTime) + @@DATEFIRST) % 7) < 2,'Weekend','Weekday') AS PartOfWeek,
Seasons.Label AS Season,
CONVERT(TIME,MeasurementTime) AS TimeOfDay,
FeederLoads.FeederNo AS FeederNo,
Avg(FeederLoads.kVA) AS Mean,
StDev(FeederLoads.kVA) AS StdDev
FROM
FeederLoads INNER JOIN
Seasons
ON Month(FeederLoads.MeasurementTime) = Seasons.Month1 OR
Month(FeederLoads.MeasurementTime) = Seasons.Month2 OR
Month(FeederLoads.MeasurementTime) = Seasons.Month3
GROUP BY
((DATEPART(dw, MeasurementTime) + @@DATEFIRST) % 7),
Seasons.Label,
CONVERT(TIME,MeasurementTime),
FeederLoads.FeederNo;
但是,当我将查询复制并粘贴到视图定义窗口的SQL窗格中时,视图无法保存。
我得到的错误信息是:
函数参数列表出错:'&lt;'未识别。无法 解析查询文本。
任何想法为什么?
答案 0 :(得分:3)
您似乎在查询设计器中运行该代码。遗憾的是,并非所有设计人员都是平等的 - 所以只需获取代码并在SQL Server Management Studio查询窗口中运行它。
http://sqlfiddle.com/#!6/59d86/1/0
这与必须在SQL View中创建的一些非常复杂的MS Access查询没有区别。