查找表: -如何使用查找
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....
select ? Meter, cost from Lookup
where ? > = FROM_METER
and ? < = TO_METER
更換與您的參數?
。
查找表通常用於爲常規數據提供代碼或參考值。假設你的業務表是你叫MASTER你會加入其記錄到您的查找這樣的一個:
select m.meter
, l.cost
from master m
join lookup l
on (m.meter between l.meter_from and l.meter_to)
你的數據模型ppears有一個問題:它並不能保證在每米MASTER表將在查找表中找到匹配的記錄。這就是爲什麼更常用的方法是使用類型或類別(如'便宜','合理','昂貴')。
很明顯,如果MASTER表沒有匹配的行,我們很難判斷你的模型是否正確,但你可能應該考慮做什麼。也許這種關係是在應用程序中強制執行的,但根據我的經驗,這種方法很難使其具有防彈性。
或'between' ... – Ben 2012-08-11 08:48:34
感謝alfasin! – user1589743 2012-08-11 09:34:08
@Ben - 你說得對。我不喜歡使用'between之間'的原因是很多人對它的包容性事實感到困惑,我喜歡我的代碼簡單明瞭;) – alfasin 2012-08-13 18:36:06