我正在尝试在MS Access中编写包含查询循环的exe。 exe将获取一个csv文件并循环遍历运行多个查询的代码行以执行不同的函数。
循环如下图所示:
查询已经存在,是否可以简单地调用类似于php变量的循环?
此外,我是否可以设置一个将在未来查询中运行的变量,因为它们将以特定的循环顺序运行? (这样变量min_value
在第一个查询中设置并进入第二个查询,第三个等等......
---------按照@ElectricLlama的要求在1393846838添加---------
查询如下:
设置$ time查询
SELECT datediff("s", #1/1/1970#, now()) AS unix_time;
选择最小值查询
SELECT Min(Field4) AS min_value FROM Market;
select * where min query
SELECT * FROM Market WHERE Field4=min_value;
count(min)值查询
SELECT count(Field4) AS count_total FROM Market WHERE field4=min_value;
循环的必要性是由于一个查询中的某些变量为null或1而另一个查询中的变量为1或> 1
感谢您
---------根据@ElectricLlama的要求在1393855784添加---------
答案 0 :(得分:1)
我正在做一些假设,因为您的流程图与您的示例数据不相关,但是......这是一个自动构建您的行号的示例查询。但它需要首先将数据加载到包含自动编号的表中。这将是一个两步过程,但没有任何循环或复杂性。如果能够实现这一点,那么维护和调试将比一大块嵌套循环VBA代码更快更容易。更不用说如果您的循环运行时间不到一秒,那么您的$time
变量将不会是唯一的。
SELECT
T1.ID, T1.Field1, T1.Field2, T1.Field3, T1.Field4,
( select count(*)
from Table1 T2
WHERE T2.Field3=T1.Field3
AND T2.ID < T1.ID
) AS LineNum
FROM Table1 AS T1;
此查询针对具有相同Field3
的任何记录生成递增行号