2017-07-28 32 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