Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP/MySQL选择值是否介于两行的值之间?_Php_Mysql - Fatal编程技术网

PHP/MySQL选择值是否介于两行的值之间?

PHP/MySQL选择值是否介于两行的值之间?,php,mysql,Php,Mysql,玩一些php和MySQL,但我有一些问题。我有一张桌子,看起来像: ---------------------------- | level | exp | ---------------------------- | 1 | 0 | ---------------------------- | 2 | 10 | ---------------------------- | 3 | 20

玩一些php和MySQL,但我有一些问题。我有一张桌子,看起来像:

----------------------------
| level  | exp             |
----------------------------
| 1      | 0               |
----------------------------
| 2      | 10              |
----------------------------
| 3      | 20              |
----------------------------
| 4      | 30              |
----------------------------
| 5      | 40              |
----------------------------
我正试图找出如何根据变量输入选择一个级别,到目前为止,我已经得到:

$sql = "SELECT level FROM levels WHERE exp >= $miningexp LIMIT 1";
$stmt = $db->query($sql);
$row =$stmt->fetchObject();
$mininglevel = $row->level;
现在,例如,如果$miningexp设置为9,我希望输出级别为1。然而,它的输出电平为2

我不确定这是否有意义,我正在尝试做更多应该输出的示例:

If $miningexp = 11 Then $mininglevel = 2
If $miningexp = 15 Then $mininglevel = 2
If $miningexp = 19 Then $mininglevel = 2
If $miningexp = 20 Then $mininglevel = 3
If $miningexp = 25 Then $mininglevel = 3
If $miningexp = 35 Then $mininglevel = 4

有人有什么想法或指导吗?谢谢

根据您发布的查询(10>=9),我认为级别2是正确的答案。同样,我不确定您发布的其他示例是否正确,因为如果
$miningexp=11
那么20>=11,那么查询应该给您3作为级别,依此类推。感谢您的回复,什么样的选择查询会给出我想要的输出?试试这个:
$sql=“select level FROM levels WHERE exp Nah。没关系。它帮助了你,所以这就是最重要的。无论如何,这是一个简单的修复。