0

我在一个临时表中填充了数据(该表总是最多有 10 条记录)。我正在尝试的下一步是逐个提取记录并查询数据库以测试某些条件并根据查询结果分配注释。例如:

-- table: #XY (data)

select data from #XY

data 
----
AB1
AB2
AB3

我正在尝试编写一个 sybase 查询,它将一个一个地获取数据(递归?),运行一些指定的查询并返回一个通过或失败的注释,然后我将最终填充到另一个临时表中

例如:第 1 行是 AB1 - 从其中 name = 'AB1' 的表中选择名称,如果它不返回数据,我会停在那里并填充评论

如果返回数据,我转到步骤 2 从表 2 中选择名称,其中名称 = 'AB1' 等等

我需要对所有记录进行处理并捕获结果并放入最终的临时表中。

我认为的o / p将是这样的

Name  Cause Descricption
----- ------------------
AB1   XXXX
AB2   YYYY

我在 shell 脚本中做过这样的事情(从文件中逐行读取并执行它们)但不确定这是否也可以在 sybase 中完成

也欢迎任何替代方法

提前致谢 。

4

1 回答 1

0

作为 Sybase ASE 中的一个批处理脚本,一个粗略的大纲:

declare datacur cursor
as
select data from #XY
for read only
go

declare @data varchar(30)

open datacur

fetch datacur into @data

while @@sqlstatus = 0
begin

    -- add code that you wish to apply against a given @data value

    fetch datacur into @data
end

close datacur
go

deallocate cursor datacur
go
于 2018-03-01T21:38:00.487 回答