gpt4 book ai didi

mysql - 如何在 SQL 中选择最接近的值,但只有当该值更大时?

转载 作者:太空宇宙 更新时间:2023-11-03 11:21:31 24 4
gpt4 key购买 nike

我有下表和一些数据:

+----+--------+--------+--------+-------+ 
| id | length | weight | height | width |
+----+--------+--------+--------+-------+
| 1 | 10 | 45 | 80 | 20 |
+----+--------+--------+--------+-------+
| 2 | 30 | 55 | 70 | 32 |
+----+--------+--------+--------+-------+
| 3 | 30 | 65 | 80 | 21 |
+----+--------+--------+--------+-------+

我想选择最接近长度和高度的值,但它必须大于我指定的值。例如,如果我在输入中写:

1)Length=20 and height=68 it should return id=2
2)Length=20 and height=71 it should return id=3

我试过这个(例如第一种情况),但我得到一个语法错误:

SELECT TOP 1 * FROM `elements` ORDER BY length-20 AND height-68

我该怎么做?

最佳答案

使用 WHERE 子句只返回具有“更大”值的行。

SELECT *
FROM `elements`
where Length >= 20 and height >= 68
ORDER BY length + height
LIMIT 1

ORDER BY 将首先对长度 + 高度较小的行进行排序。使用 LIMIT 1 来选择最小的一个。

关于mysql - 如何在 SQL 中选择最接近的值,但只有当该值更大时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59360150/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com