0

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

+--------------+------------+-------------+
| TaxAuthority | Effective  | AuthTaxRate |
+--------------+------------+-------------+
| city1        | 1993-01-01 |         1.0 |
| city1        | 1994-01-01 |         1.5 |
| city2        | 1993-09-01 |         1.5 |
| city2        | 1994-01-01 |         2.0 |
| city2        | 1995-01-01 |         2.5 |
| city3        | 1993-01-01 |         1.9 |
| city3        | 1993-07-01 |         2.3 |
| county1      | 1993-01-01 |         2.3 |
| county1      | 1994-10-01 |         2.5 |
| county1      | 1995-01-01 |         2.7 |
| county2      | 1993-01-01 |         2.4 |
| county2      | 1994-01-01 |         2.7 |
| county2      | 1995-01-01 |         2.8 |
| state1       | 1993-01-01 |         0.5 |
| state1       | 1994-01-01 |         0.8 |
| state1       | 1994-07-01 |         0.9 |
| state1       | 1994-10-01 |         1.1 |
+--------------+------------+-------------+

1994 年 11 月 1 日の city2 の税率を選択しようとしています。例:

City2 = 2.0
County1=2.5
State1=1.1
Total=5.6

これまでのところ、5.6 になるすべての金額を取得できました。ただし、3つの合計を合計する方法がわかりません。これは私がこれまでに持っている声明です:

    select AuthTaxRate 
    from TaxRates 
    where TaxAuthority = 'City2' 
    and Effective <= '1994-11-01' 
    and Effective > '1993-09-01' 
    union 
    select AuthTaxRate 
    from TaxRates 
    where TaxAuthority = 'County1' 
    and Effective <= '1994-11-01' 
    and Effective > '1993-09-01' 
    union 
    select AuthTaxRate 
    from TaxRates 
    where TaxAuthority = 'State1' 
    and Effective <= '1994-11-01' 
    and Effective > '1994-07-01';

私の声明の結果は次のとおりです。

+-------------+
| AuthTaxRate |
+-------------+
|         2.0 |
|         2.5 |
|         1.1 |
+-------------+

これらの値を合計する方法を知っている人はいますか?

4

1 に答える 1

0

私は今確信していますが、あなたはこのように試すことができます-

Select sum( 
 select AuthTaxRate 
    from TaxRates 
    where TaxAuthority = 'City2' 
    and Effective <= '1994-11-01' 
    and Effective > '1993-09-01' 
    union 
    select AuthTaxRate 
    from TaxRates 
    where TaxAuthority = 'County1' 
    and Effective <= '1994-11-01' 
    and Effective > '1993-09-01' 
    union 
    select AuthTaxRate 
    from TaxRates 
    where TaxAuthority = 'State1' 
    and Effective <= '1994-11-01' 
    and Effective > '1994-07-01';
 ) As  total;
于 2013-11-10T02:06:29.537 に答える