2017-07-28 59 views
1
ID | Count 
----------------- 
1  | 45 

2  | 5 

3  | 120 

4  | 87 

5  | 60 

6  | 200 


7  | 31 

SizeName | LowerLimit | UpperLimit 
--------------------------------- 
Small | 0   | 49 

Medium | 50   | 99 

Large | 100  | 250 

加入與數的範圍內的數基本上,一個表指定了一個未知的數量「range names」 及其整數範圍相關聯。因此,來自人員表的0到 49的計數範圍得到'small'的稱號。 50-99得到 'medium'等等。但我需要它是動態的,因爲我不知道範圍名稱或整數值 。我可以在單個 查詢中執行此操作,還是必須編寫單獨的函數以便通過可能性循環 ?如何從另一個表

+0

範圍始終是互斥的嗎? –

+0

是@VadimLanda –

回答

3

這樣做的一種方法是加入表格,具體取決於是否要將值保留在「範圍名稱」之外,或者不是,可以分別使用LEFT或INNER join。

SELECT A.id, A.Count, B.SizeName 
FROM tableA A 
LEFT JOIN tableB B ON A.id >= B.LowerLimit AND A.id < B.UpperLimit