具有复杂情况条件的SQL连接

时间:2020-11-03 03:56:08

标签: sql join

我需要构建查询以获取以下详细信息。

表1

Code  Text
1  A
2  B
3  C

表2

Code  Min  Max
1  1.00  1.75
2  1.76  2.25
3  2.26  3.00

表3

Eid  Value
1234  1.2
3456  2.56

我正在查看一个查询,该查询在单个SQL查询中给出以下输出。 表3应该查看“值”,比较表2中的值以查看它是否位于Min和max之间,并获得等效代码,并将代码与表1进行比较,并获得最终的Text值。

最终输出

Eid  Text
1234  A
3456  C

2 个答案:

答案 0 :(得分:1)

这是一种实现方法

select t3.eid,t1.text
  from t3
  join t2
    on t3.value between t2.min and t2.max
  join t1
    on t2.code=t1.code

答案 1 :(得分:0)

您可以尝试以下-

select eid,text
from table3 t3 inner join table2 t2 on t3.Value>=t2.min and t3.Value<=t2.max
inner join table1 t1 on t1.code=t2.code