私は結果を生成したい参加:ルールを使用してのSQL IIF文のテーブルの質問
table name: HWData
policy number: number of residents: factor:
100 2 1
101 4 1.25
102 7 2
103 99 2
104 1 0.85
を:
table name: Tier_Occupancy
number of residents: factor:
1 0.85
2 1
3 1.10
4 1.25
5 1.5
6 or above 2.0
は、これは私がこれまで持っているものです。
SELECT
HWData.[Policy Number],
iif(HWData.[Number of Residents] = 1, Tier_Occupancy.Factor,1),
iif(HWData.[Number of Residents] = 2, Tier_Occupancy.Factor, 1),
iif(HWData.[Number of Residents] = 3, Tier_Occupancy.Factor, 1),
iif(HWData.[Number of Residents] = 4, Tier_Occupancy.Factor, 1),
iif(HWData.[Number of Residents] = 5, Tier_Occupancy.Factor, 1),
iif(HWData.[Number of Residents] >= 6, Tier_Occupancy.Factor, 1)
FROM HWData
INNER JOIN Tier_Occupancy ON HWData.[Number of Residents]=Tier_Occupancy.[Number of Residents]
ORDER BY HWData.[Policy Number];
マイ質問は結果を表示していますが、ポリシー番号100の1 1 1 1 1 1
と表示されています と表示されています1 1 1 1.25 1 1
のポリシー番号101が必要ですが、ポリシー番号100に1を、ポリシー番号101に1.25を表示したいだけです。
私は2007 Microsoft AccessのSQLを使用しています。
どのバージョンのSQLに 'iif'機能がありますか?それは何をするためのものか? – Gabe
RDBMSとは何ですか? MS-SQL Serverには関数としてiifはありません。それはyiur自身のUDFですか? – Kangkan
申し訳ありませんが、実際には2007 Microsoft AccessのSQLサーバーを使用しています。もしそれがあなたにとって意味をなさないなら... – sc1324