我试图插入查询结果到表中使用'Insert Into' xxx(col1, col2, col3...) values(....)
,但得到语法错误'不正确的语法靠近关键字'与'。如果这个语句是一个公用表表达式,一个xmlnamespaces子句或一个变更跟踪上下文子句,则前面的语句必须以分号结束。Sql Server2008:插入不起作用,得到错误
任何想法如何使用'插入'与这样的复杂查询? 请注意'与Rownumbers ..'查询工作,并返回一个准确的结果,只是错误,当我尝试插入该结果。
INSERT INTO Cost(Name, [Status], [Hours]) values(
with RowNumbers (RowNum, name, [status], [DateTime])
as
(
select
ROW_NUMBER() over (partition by name order by [DateTime]),
name,
[status],
[DateTime]
from @T
)
select
T1.name,
case T1.[status]
when 0 then 'In'
when 1 then 'Out'
when 2 then 'Absent'
end as [status],
sum(datediff(MINUTE, T1.[DateTime], T2.[DateTime])/60.0) as [hours]
from RowNumbers T1
inner join RowNumbers T2
on T1.RowNum = T2.RowNum - 1 -- joins the current row to the next one
and T1.name = T2.name
group by T1.name, T1.[status]
order by T1.Name, T1.[status]);