1
我有一个在SQL Server Management Studio中运行正常的SQL查询,但是当我将它复制并粘贴到jasperreports的iReport中以生成报表时,它给了我一个SQL Server异常,并说该声明没有返回结果集。这让我感到困惑。SQL服务器异常:语句没有返回结果集
查询是:
declare @index int = 1
declare @t Table(ID INT, DI INT, INDBOOK1 INT, INDBOOK2 INT, delta INT)
while(@index < 18)
begin
INSERT INTO @t
select distinct top 18
col1.ID,
col1.DI,
col1.INDBOOK as INDBOOK1,
col2.INDBOOK as INDBOOK2,
col2.INDBOOK - col1.INDBOOK
FROM
table as col1
inner join
table as col2 on col2.ID = @index
and col2.DI = col1.DI+1
where
col1.ID = @index
set @index = @index + 1
end
select ID, DI, INDBOOK1, INDBOOK2, delta FROM @t
有谁知道这是为什么给我这个没有结果集返回异常?
任何帮助表示赞赏。
可能是因为您所使用的工具不是很好解析你的SQL。你真的需要一个循环来做到这一点?我不这么认为。 –
感谢您的输入。我赞同你。但是,如何在不循环的情况下执行此任务? –
我很乐意为您提供指导,但根据目前失败的情况,我不确定CTE或联接或任何复杂的SQL也不会破坏您的报告工具。 –