【问题标题】:Arithmatic Operations On Columns Using Same Columns使用相同列的列上的算术运算
【发布时间】:2019-08-02 19:50:34
【问题描述】:

我有一列,我想使用同一列对同一列执行一些算术运算

Price
---------
10
11
12
12
14
14
14
14

如果我想知道 Price=14 的行,那么我可以使用 where 子句编写一个简单的选择查询

select * from table_name where Price = 14;

但价格列的值不断变化,如果我想要这样的东西

Latest value of Price is 10
select * from table_name where Price = Price + 4;

这应该返回值为 14 的所有行。我们如何实现这一点?

【问题讨论】:

  • 你怎么知道Price 的“最新”值在你的表中是什么?

标签: mysql sql where arithmetic-expressions


【解决方案1】:

使用子查询

 select * from table_name where Price = (select min(Price) + 4 from table_name)

【讨论】:

  • Price 的下一个值可以是 13,那么查询将返回不正确的值
  • @user3198755 从你的数据中获取最新值的逻辑是什么,看起来很简单,所以我用了这个
  • 我知道的唯一逻辑是,无论最新价格是多少,我们都将加 4
  • @user3198755 如果你不知道最新的逻辑,那么你无法在这里解决它,主要重点是了解最新的基于什么
猜你喜欢
  • 2019-03-04
  • 2017-11-19
  • 2020-07-13
  • 2019-09-20
  • 2016-05-21
  • 2020-07-16
  • 2018-01-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多