-3

我有一个简单的表,名称为lovalue, hivalue。我想传递一个数字,然后让表格扣除要返回的名称。

例如:

名称,低,高
黑色, 0, 10
灰色, 11, 20
白色, 21, 30

如果传递了数字 11,则查询返回 Black。
如果传递了数字 22,则查询返回 White。

4

3 回答 3

5

假设这是您说的问题中的错字...如果传递了数字 11,则查询返回 Black...您可以这样做

SELECT name
  FROM Table1
 WHERE 11 BETWEEN low AND high

输出:

| 姓名 |
--------
| 灰色 |

这是SQLFiddle演示

于 2013-08-02T06:17:02.010 回答
0

尝试这个:

DECLARE @Parameter INT = 15 

SELECT NAME 
FROM   TABLE 
WHERE  LOW <= @Parameter 
       AND HIGH >= @Parameter 
于 2013-08-02T06:10:26.783 回答
0

尝试这个:

DECLARE @VALUE INT
SET @VALUE = 11

SELECT
    Name
FROM <TABLE>
WHERE @VALUE >= (Low + 1) AND  @VALUE <= (High + 1)

如果它是一个错字,那么使用这个:

DECLARE @VALUE INT
SET @VALUE = 11

SELECT
   Name
FROM <TABLE>
WHERE @VALUE >= Low AND  @VALUE <= High
于 2013-08-02T06:09:37.650 回答