Sql 从隐藏列计算和

Sql 从隐藏列计算和,sql,ms-access,Sql,Ms Access,我有一张桌子,看起来像: 罢工率基本上计算出OrdersTaken-OrdersFrom,但我不希望这两列显示出来,所以我只希望代码+罢工率调用 但当我禁用show时,它会提示我输入它的数字,这样它就无法再找到它了 我的查询类似于: SELECT T_Temp_RestrictedDiaryCalls.AccreditedDomainCode, Count(T_Temp_RestrictedProductSalesHistory.CustomerCode) AS Orde

我有一张桌子,看起来像:

罢工率基本上计算出OrdersTaken-OrdersFrom,但我不希望这两列显示出来,所以我只希望代码+罢工率调用

但当我禁用show时,它会提示我输入它的数字,这样它就无法再找到它了

我的查询类似于:

SELECT T_Temp_RestrictedDiaryCalls.AccreditedDomainCode,
    Count(T_Temp_RestrictedProductSalesHistory.CustomerCode)
        AS OrdersTaken, qry_TargetReports.CountOfCustomerCode 
        AS OrdersFrom, [OrdersTaken]-[OrdersFrom] 
        AS [Strike Rate (Calls)]

    FROM qry_TargetReports 
        INNER JOIN (T_Temp_RestrictedDiaryCalls
        INNER JOIN T_Temp_RestrictedProductSalesHistory 
            ON (T_Temp_RestrictedDiaryCalls.CallDate = T_Temp_RestrictedProductSalesHistory.EntryDate)
                AND (T_Temp_RestrictedDiaryCalls.CustomerCode = T_Temp_RestrictedProductSalesHistory.CustomerCode)) 
            ON qry_TargetReports.AccreditedDomainCode = T_Temp_RestrictedDiaryCalls.AccreditedDomainCode

    GROUP BY T_Temp_RestrictedDiaryCalls.AccreditedDomainCode, qry_TargetReports.CountOfCustomerCode;

但老实说,MsAccess为我生成了它。我只需要一个方法,说明如何在仍然计算总和的情况下隐藏两列,干杯。

使用除[OrdersTaken]-[OrdersFrom]之外的所有内容作为子查询,并在父查询中计算差异

问题是[OrdersTaken]和[OrdersFrom]都是字段表达式的别名,原始查询在计算[Strike Rate Calls]时试图在SELECT子句中使用这些别名。一般来说,Access不允许您这样做

选择 子认证代码, sub.OrdersTaken-sub.OrdersFrom AS[罢工率呼叫] 从…起 选择 rdc.AccuditedDomainCode, Countrpsh.CustomerCode作为OrdersTaken, tr.CountOfCustomerCode作为订单来自 从…起 qry_目标报告为tr 内部连接T_Temp_RestrictedDiaryCalls作为rdc 内部连接T_Temp_RestrictedProductSalesHistory作为rpsh 在…上 rdc.CallDate=rpsh.EntryDate 和rdc.CustomerCode=rpsh.CustomerCode 在tr.AccreditedDomainCode=rdc.AccreditedDomainCode上 按rdc.AccreditedDomainCode分组,tr.CountOfCustomerCode 作为分包商;
查看SELECT:有4个部分对应于4个结果列

T_Temp_RestrictedDiaryCalls.AccreditedDomainCode,
Count(T_Temp_RestrictedProductSalesHistory.CustomerCode) AS OrdersTaken,
qry_TargetReports.CountOfCustomerCode AS OrdersFrom
[OrdersTaken]-[OrdersFrom] AS [Strike Rate (Calls)]
如果只需要第1行和第4行,只需删除第2行和第3st行:

T_Temp_RestrictedDiaryCalls.AccreditedDomainCode,
[OrdersTaken]-[OrdersFrom] AS [Strike Rate (Calls)]
但是,您还必须用OrdersTaken和OrdersFrom的定义替换它们:

T_Temp_RestrictedDiaryCalls.AccreditedDomainCode,
Count(T_Temp_RestrictedProductSalesHistory.CustomerCode) # this is what OrdersTaken stands for
    - qry_TargetReports.CountOfCustomerCode # this is what OrdersFrom stands for
AS [Strike Rate (Calls)]
请注意,您还可以设置

Strike Rate (Calls):Count(T_Temp_RestrictedProductSalesHistory.CustomerCode)-qry_TargetReports.CountOfCustomerCode

在编辑器的查询定义中,也可以这样做。

请不要在您的问题中链接图像,因为许多人看不到它们或它们已被删除。你能改为将表格作为文本发布吗?这是一个保存的查询吗?查询具有自动保存的关联排序顺序。这样的提示通常表示您不再使用的字段是按排序顺序保存的。这不是已保存的查询,我将SQL代码放入VBAThank you!效果很好