ルックアップテーブル:-
FROM_METER TO_METER COST
1 5 0.004
6 10 0.006
11 20 0.012
必要な出力:- (ここでは 15 と 7 の場合、たとえばコスト出力はルックアップ マスターから取得されます)
METER COST
15 0.012
7 0.006
etc....
ルックアップテーブル:-
FROM_METER TO_METER COST
1 5 0.004
6 10 0.006
11 20 0.012
必要な出力:- (ここでは 15 と 7 の場合、たとえばコスト出力はルックアップ マスターから取得されます)
METER COST
15 0.012
7 0.006
etc....
ルックアップ テーブルは通常、通常のデータのコードまたは参照値を提供するために使用されます。ビジネス テーブルが MASTER と呼ばれるものであると仮定すると、次のようにそのレコードをルックアップに結合します。
select m.meter
, l.cost
from master m
join lookup l
on ( m.meter between l.meter_from and l.meter_to)
データ モデルに問題があるようです。MASTER テーブルのすべての METER がルックアップ テーブルで一致するレコードを見つけるとは限りません。これが、より一般的なアプローチがタイプまたはカテゴリ (「安い」、「合理的」、「高価」など) を使用する理由です。
明らかに、あなたのビジネスのルークを知らずに、あなたのモデルが正しいかどうかを言うのは難しいですが、MASTER テーブルに一致する行がない場合の対処法を検討する必要があります。おそらく、関係はアプリケーションで強制されますが、私の経験では、そのアプローチを防弾にするのは困難です。
select ? Meter, cost from Lookup
where ? > = FROM_METER
and ? < = TO_METER
をパラメーターに置き換え?
ます。