2

次のようなテーブルがあります。

ここに画像の説明を入力

Strike Rate は基本的に OrdersTaken - OrdersFrom を計算しますが、これら 2 つの列を表示したくないので、Code + Strike Rate Calls だけを表示します。

しかし、ショーを無効にすると、番号を入力するように求められるので、それを見つけることができなくなりますか?

ここに画像の説明を入力

私のクエリは次のようになります。

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 が生成してくれました。合計を計算しながら 2 つの列を非表示にする方法が必要なだけです。

4

2 に答える 2

0

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 行目と 3 行目を削除します。

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

エディターのクエリ定義では、これは同じことを行います。

于 2013-11-05T14:16:46.940 に答える