【问题标题】:MySQL SELECT statement to select N rows from products WHERE AVERAGE price is XMySQL SELECT 语句从产品中选择 N 行,其中平均价格为 X
【发布时间】:2013-11-15 21:02:52
【问题描述】:

无法提出一个查询,允许我从一个表中选择 N 个产品,平均价格为 X 数量并限制为 Y 行数。

IE。选择平均价格为 90.00 的 1000 种产品

SELECT * 
FROM ProductList 
WHERE Price = [something something something based on AVG price LIMIT 1000]

产品表不大,所以有多个子选择或函数或存储过程不是问题

甚至可以创建一个新表,其中包含要加入的产品 ID 以供选择

【问题讨论】:

  • 您的“平均价格”是所有产品的平均价格吗?还是产品有多个价格?如果是前者,您是在寻找具有确切平均(平均)价格的产品,还是在它附近的某个“范围”内?
  • 所有要选择的产品的实际平均值,平均价格为 90.00 的 1000 个产品应选择 1000 个产品,所有选定条目的平均值加起来平均为 90.00

标签: mysql sql grouping average


【解决方案1】:

你的意思是这样的?

select
*
from
ProductList
where price = (select avg(price) from productlist)

【讨论】:

  • 这将查找平均价格并尝试选择价格等于平均价格的产品,此外 - 此查询不考虑 N 个项目或X 平均价格
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-11-30
  • 1970-01-01
  • 1970-01-01
  • 2013-01-14
  • 1970-01-01
  • 1970-01-01
  • 2018-04-26
相关资源
最近更新 更多