如何提取位于Sql中的范围内的数据

Posted

技术标签:

【中文标题】如何提取位于Sql中的范围内的数据【英文标题】:How to extract data which lies in a range in Sql 【发布时间】:2017-01-28 06:09:00 【问题描述】:

我正在编写一个 android 应用程序,它将碳水化合物、蛋白质和脂肪的特定值发送到服务器。我的数据库包含食品,其中还提到了这些食品中碳水化合物、蛋白质和脂肪的含量。

我想知道如何查询数据库以返回与应用程序发送的值相似的食品。

例如:假设应用程序将碳水化合物、蛋白质和脂肪以 30,40 和 50 克的形式发送到服务器。然后服务器应提取并返回碳水化合物在 29-31 范围内、蛋白质在 39-41 范围内、脂肪在 49-51 范围内的食物

食物表有食物列表,列是碳水化合物、蛋白质和脂肪

从示例中我需要获得类似的食物,即黑面包、白面包和杏仁。

【问题讨论】:

@GurV $statement = mysqli_prepare($con, "SELECT * FROM Breakfast WHERE Caribbean_m = ? AND protein_m = ? AND fat_m =?; 这就是我尝试过的 【参考方案1】:

试试这个:

SELECT * FROM Breakfast
WHERE ? between carbohydrate_m - 1 and carbohydrate_m + 1
AND ? between protein_m - 1 and protein_m + 1 
AND ? between fat_m - 1 and fat_m + 1

【讨论】:

以上是关于如何提取位于Sql中的范围内的数据的主要内容,如果未能解决你的问题,请参考以下文章

如何从SQL中的当前时间获取所有时间在下一个小时范围内的数据

如何连接列值在一定范围内的两个数据框?

arcgis中如何保留范围内的点

如何在 SQL 中查找范围内的空白

如何在 SQL 中针对事务表计算一段时间内的覆盖日期?

SQL:我如何找到存在于 30 分钟日期时间范围内的“Created_at”列的数据集记录?