我在Access中使用SQL。我不是一个程序员,但我熟悉使用VBA和SQL基础知识。
我想要完成的是在Visual Basic中使用的for循环的SQL中等效。我知道这不是技术上的"可能在SQL中可能不是最好的方法,所以我正在寻找建议。我知道可以通过使用联合并为每个值重复查询来完成i = 1,2,3等。这样效率很低,而且很容易变得太复杂而无法评估。
基本上我需要的是查询i = 1的方法,然后重复并再次输出i = 2的数据,依此类推。使用group by i不是一个选项,因为也涉及几个子查询。
提前致谢!
答案 0 :(得分:2)
确定您需要完成的工作并不是很清楚,我建议您发布表格结构以及需要检索的内容。
但是,使用IN语句“看起来”似乎是可行的。
select
*
from
whatever
where id IN (1,2,3)
答案 1 :(得分:1)
没有很多上下文,我们无法提供更好的答案,但你可以在sql中完成一些FOR循环。
declare @ctr integer
set @ctr = 1
while @ctr < 1000
begin
--Do your logic
select @ctr = @ctr + 1
end
但这不是SQL的高效使用。你应该能够编写你需要的东西,而不必迭代它。在SETS中思考,你将与你的RDBMS相处得更好。