【问题标题】:How can i check range between all value in columns如何检查列中所有值之间的范围
【发布时间】:2019-08-04 22:45:25
【问题描述】:

下面是我的 MYSQL 表。固定值:

Fuel           Percentage(%)
------         -------
150 (L)          100 
120 (L)          90 
90  (L)          70
10  (l)          20 

此数据也已修复。假设我声明变量 getValue=130 现在我想检查 getValue=130 是 MYSQL 表中的哪个范围。 很容易猜到 getValue=130 的范围是(120 L 到 150 L),百分比范围是(90 到 100) 所以在这个问题陈述中。如何查找范围并查找 MYSQL 数据库表的百分比? 我如何使用 python 做到这一点。

【问题讨论】:

  • 超出范围的情况会怎样?例如值5 或值200?
  • 先生,我无法理解您的评论。实际上我想根据我在问题中已经提到的范围找到比率:)
  • MySQL 5.x 还是 MySQL 8.x?
  • 我现在用的是mysql 8.x。

标签: python mysql


【解决方案1】:

如果您始终检索有效范围内的值(例如,在您的示例中为 10 到 150 之间),则以下查询会为您提供范围:

select
  f.fuel as fuel_from, f.percentage as percentage_from,
  t.fuel as fuel_to, t.percentage as percentage_to
from (
  select * from t where fuel <= 130 order by fuel desc limit 1
) f
cross join (
  select * from t where fuel >= 130 order by fuel limit 1
) t

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-12
    • 2019-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多