首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MySQL中获得某些特定条件下的最佳表行

在MySQL中获得某些特定条件下的最佳表行
EN

Stack Overflow用户
提问于 2021-05-27 10:21:47
回答 2查看 28关注 0票数 1

我想确定一个特定高度的包裹(例如,40厘米、77厘米、25厘米)合适的最佳表行。在SQL中通常可以评估类似的内容吗?

一个40厘米高的包裹在第1级最适合一个77厘米高的包裹在第3级最适合

没有超过99厘米的包裹。

我的图层表非常简单:

代码语言:javascript
复制
CREATE TABLE `levels` (
 `hall` VARCHAR(1) NOT NULL,
 `row` VARCHAR(2) NOT NULL,
 `level` tinyint(1) NOT NULL,
 `height` float(5,2) NOT NULL
);

INSERT INTO `levels` (`hall`, `row`, `level`, `height`) 
VALUES ('D', '01', 0, 76.00),
       ('D', '01', 1, 41.00),
       ('D', '01', 2, 41.50),
       ('D', '01', 3, 100.00);

https://www.db-fiddle.com/f/eWe8EEvWCpWtjiBA7cKzVW/1

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-05-27 10:29:04

WHERE子句中设置条件,并以最小高度取第一行:

代码语言:javascript
复制
SELECT * 
FROM levels
WHERE height >= ? -- or maybe height > ?
ORDER BY height LIMIT 1;

用搜索的高度替换?

演示

票数 1
EN

Stack Overflow用户

发布于 2021-05-27 10:29:50

选择最低拟合高度,并查看它属于哪个级别(用要检查的高度替换77 ):

代码语言:javascript
复制
SELECT `level`
FROM `levels`
WHERE `height` = (SELECT MIN(`height`) FROM `levels` WHERE `height` >= 77);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67720185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档