0
使用显示的查询时,出现错误。不支持Declare SQL构造或语句
不支持Declare SQL构造或语句。
帮我找到一个合适的解决方案。
DECLARE @maxcount1 float
DECLARE @maxcount0 float
DECLARE @start datetime
SET @start = getdate() - 2
DECLARE @end datetime
SET @end= getdate() + 2
SELECT @maxcount1 = max(OnTimeCount),@maxcount0 = max(DueTimeCount)
FROM (SELECT DISTINCT COUNT(DISTINCT CASE WHEN ontime = 1 THEN sl_no END) AS OnTimeCount, COUNT(DISTINCT CASE WHEN ontime = 0 THEN sl_no END) AS DueTimeCount FROM tbl_splited_details
WHERE (uploaded_date BETWEEN @start AND @end) GROUP BY Site_ID) AS s
SELECT DISTINCT Site_ID, OnTimeCount, DueTimeCount,
round((cast((OnTimeCount*100) AS float)/@maxcount1), 2)AS percentage1 , round((cast((DueTimeCount *100)AS float)/@maxcount1), 2) AS percentage0
FROM (SELECT DISTINCT Site_ID, COUNT(DISTINCT CASE WHEN ontime = 1 THEN sl_no END) AS OnTimeCount,
COUNT(DISTINCT CASE WHEN ontime = 0 THEN sl_no END) AS DueTimeCount
FROM tbl_splited_details WHERE (uploaded_date BETWEEN @start AND @end) GROUP BY Site_ID) AS s
您使用的是哪个版本的SQL Server? –
@ kpa6uk:SQL Server 2005 – Reshma
@ kpa6uk:我在我的查询中应用了你的答案。但错误仍然存在。 – Reshma