为什么这个查询要求参数值?

问题描述 投票:3回答:3

我在Access 2010中工作。我有以下查询(名为bird_year_species):

SELECT sub.Species, Min(sub.obs_year) AS First_sighting_year
FROM (SELECT DISTINCT [Genus_BiLE] & " " & [Species_BiLE] AS Species, [Year_BiLE] AS  obs_year
FROM BiLE_Bound


UNION ALL

SELECT DISTINCT [Genus_BiMN] & " " & [Species_BiMN] AS Species, [Year_BiMN] AS obs_year
FROM BiMN_Bound

UNION ALL 

SELECT DISTINCT [Genus_BiPC] & " " & [Species_BiPC] AS Species, [Year_BiPC] AS obs_year
FROM BiPC_Bound

UNION ALL

SELECT Distinct [Genus_BiOP] & " " & [Species_BiOP] AS Species, [Year_BiOP] AS obs_year
FROM BiOP_Rec

)  AS sub
GROUP BY sub.Species;

当我打开它时,我得到一个弹出窗口,询问Query1.obs_year的参数值。如果我只是填写任何东西并点击好,表格会弹出并且有效。我不知道为什么会这样,并且查询没有命名为Query1。

sql parameters ms-access-2010
3个回答
0
投票

我尝试将代码复制到新查询中。我试着压缩修复。我尝试用另一个名称保存数据库。没有哪个有效。

最终我打开了查询,从SQL视图切换到设计视图,回到SQL视图和瞧,这似乎是这样做的。这么奇怪。


0
投票

发生这种情况时,请检查您的属性,特别是在过滤器和按字段排序中查找对Queryx的引用。


0
投票

我有同样的问题,OP解决方案对我不起作用,因为它是由其他东西引起的。如果其他人处于我的状态并且偶然发现这个问题,我将发布原因和解决方案。它可能是非常基本的东西,因为我是初学者使用Access,但也许它可以帮助那里的人。

我有GROUP BY和一些计算列的查询。就像是

Select A, B, (A*B) AS C, (A+B) AS D
FROM table
GROUP BY A, B

然后我从设计视图添加了另一个基于C和D的计算字段,并且在运行查询时我开始被要求输入C和D.查看SQL,设计导致错误的查询:

Select A, B, (A*B) AS C, (A+B) AS D, (D*C) as E
FROM table
GROUP BY A, B, [D]*[C]

请注意表达式是如何添加到组中的?这就是它在运行查询时询问值的原因。

  • 从sql中删除不必要的分组

要么

  • 从设计视图中将列的Total值从Group By更改为Expression
© www.soinside.com 2019 - 2024. All rights reserved.