【发布时间】:2017-06-02 18:35:16
【问题描述】:
我有一个包含 3 列的表:list_num、sales_price 和 days_on_market
我想运行一个查询,该查询将为列“days_on_market”的平均值输出一个数字,并在按“sales_price”排序时删除前 5% 和后 5% 的行。
我找到了一个我认为在这里会有所帮助的示例,但答案太复杂了,我无法理解(我上周刚开始学习 mySQL)。请参阅此示例here。
这是我的代码:
SELECT round(avg(days_on_market),0) as "90% Sell In"
FROM sold_q3_2016
WHERE list_num NOT IN (
SELECT list_num FROM sold_q3_2016 ORDER BY sales_price LIMIT (count(list_num)*0.05)
) OR list_num NOT IN (
SELECT list_num FROM sold_q3_2016 ORDER BY sales_price desc LIMIT (count(list_num)*0.05)
)
;
现在我什至无法运行它,因为我在 LIMIT 子句内的 count 函数周围遇到语法错误,但我想把它留在这里以展示我的思考过程。有什么想法吗?
【问题讨论】:
标签: mysql