土地の種類を数えるレポートを提供するように依頼されました。問題は、問題の区画に複数のタイプの土地がある場合、カウントは最大の市場を持つ土地の部分に移動し、リセットを無視することです。表は、私が作業しているものと、目的の出力を示すのに役立ちます。
TRMaster Table
Year Parcel District
2012 0-0-12 1
2012 0-0-15 1
2012 0-0-20 3
TRValue Table
Year Parcel PropCode Market
2012 0-0-12 LC01 10,000
2012 0-0-12 LR01 25,000
2012 0-0-15 LA01 30,000
2012 0-0-15 LS01 28,000
2012 0-0-20 LR01 13,000
2012 0-0-20 LS01 15,000
2012 0-0-20 LS02 18,000
TRProp Table
PropCode tc233 PropType
LA01 1 A
LC02 3 A
LR01 2 A
LS01 4 A
LS02 4
Desired Output
District tc233 Count
1 1 1 (from 0-0-15 LA01)
1 2 1 (from 0-0-12 LR01)
3 4 1 (from 0-0-20 LS02)
次のクエリは近いですが、p.tc233 の MIN 句のために機能しません。もちろん、TRValue のパーセルの各レコード セットの最小 p.tc233 値を返します。
Select m.District, MIN(p.tc233), MAX(v1.currentmarket), COUNT(*)
from trvalue v
inner join TRProp P on
p.code = v.Code and p.PropType = 'A'
inner join TRMaster m on
m.Year = v.Year and m.Parcel = v.parcel and m.Deleted = 0
where v.Year = 2012
group by m.district, p.tc233
having MAX(v.currentmarket) > 0
order by m.district, p.tc233
サブセレクトが1つか2つ必要になると思います!さらに情報が必要な場合は、お問い合わせください。できる限りの情報を提供します。
どんなアイデアでも大歓迎です。
ありがとう。