【发布时间】:2013-05-10 11:26:03
【问题描述】:
您好,我有一张表格,其结构如下:
create table prices(
id int not null,
mini float not null,
maxi float not null,
primary key (id)
);
然后我选择特定范围内的行的 ID。 以下小提琴不言自明:http://sqlfiddle.com/#!2/5885d/2
set @pmini1 = 82.5;
set @pmaxi1 = 85.5;
select *
from prices
where ((@pmini1 between mini and maxi) or
(@pmaxi1 between mini and maxi));
好的,所以知道我试图实现这个条件:
- 如果范围高于表格的最大最大值,那么它会 选择具有最高 maxi 的元素的 id。
- 如果范围低于表的最低mini,那么它会选择id mini 最小的元素。
是否可以在不使用多个查询的情况下做到这一点? 任何建议或提示将不胜感激。
如果您需要更多信息,请告诉我,我会编辑帖子。
【问题讨论】: