1

我正在尝试制作一个搜索系统,在该系统中我可以使用诸如年龄之类的过滤器。但是还有一个选项可以将具有特定收入的用户过滤到最多第二个薪水选项。

例如

来自收入 -$25,001 - 40,000

收入 - $80,001 - 100,000

所以我想从这些收入中搜索所有用户

表结构就像

在此处输入图像描述

上表是收入表。

并且有一个用户表,其中只有一个来自上述选项的值

例如用户 ID 1 的 $25,001 - 40,000

那么如何搜索 $25,001-40,000 到 $80,001 - 100,000 之间的所有用户

4

1 回答 1

0

好吧,看起来您的收入水平具有连续的 id,但最好的方法是更改​​该表,以便在该表上有 RangeMinimumIncome 和 RangeMaximumIncome。然后你可以做类似的事情:

SELECT 
*
FROM
   Income
WHERE
   RangeMinimumIncome >= 25000 AND RangeMinimumIncome <= 100000
   RangeMaximumIncome >= 25000 AND RangeMaximumIncome <= 100000

或者,您可以对您的 Id 列执行类似的操作,但这将要求这些 Id 始终处于正确的顺序,这是不应该做出的假设。

于 2013-06-02T01:30:30.567 回答