【发布时间】:2016-12-16 00:05:15
【问题描述】:
我有一个名为ranges 的表,看起来像这样-
create table ranges(low bigint, high bigint, id int);
insert into ranges values (10,20,100);
insert into ranges values (21,30,101);
我还有一张像这样的桌子-
create table ip(ip bigint);
insert into ip values (12);
如果ip 表中的ip 介于low 和ranges 表的high 之间,我想要一个查询,它将从ranges 表中输出id。
例如,对于 ip 12,我希望输出为 -
12,100
因为12 介于ranges 表中的低10 和高20 之间。这样做最有效的方法是什么? ip 列在 ranges 表中不存在,因此我无法进行直接连接。
【问题讨论】:
标签: sql postgresql join