我的目标是:我有三个表dev1,PICK1,rul1,我需要我的信息在它们之间进行交互, 一个例子是:根据select rul1表的结果,从dev1表中取出某些行并将它们插入到PICK1中,
然后必须更新表dev1的行以避免在rul1的下一个选择中再次被选中
这是表格的结构:
dev1 {
[delivery]
[inlist]
[scot]}
rul1{
[group],
[field],
[logical_condition]
[value]}
PICK1 {
[id_delivery]
[group_num]
[lock]}
这些是我在rul1中的一些价值
[group] [field] [logical_condition] [value]
1 scot = 1
1 inlist = 0
2 scot = 2
2 inlist = 0
3 scot = 3
然后当我运行这个存储过程时:
BEGIN
DECLARE @ max int, @ count int<br />
SET @ count = 1<br />
SELECT @ max = max ([group]) from rul1 group by [group]
while (@ count <= @ max)<br />
BEGIN<br />
select field + '' + logical_condition + '' + value as [rule] from rul1 where [group]= @count<br />
SET @ count = (@ count + 1)<br />
END
END
我得到每组的结果(1,2,3):
scot = 1
inlist = 0
scot = 2
inlist = 0
scot = 3
现在我想把这些结果放到一个字符串中,成为子句“where”的一部分,从dev1中选择正确的行并将它们插入PICK1
然后在dev1上更新,我想这必须是每次我运行程序时,但我不知道如何嵌套存储过程或
如果可以通过其他方法完成。
欢迎每一项协助
非常感谢