我正在为我的网站创建房价搜索,并且我有过去 15 年以前房屋销售的土地登记数据。
我正在尝试执行 mysql 查询以搜索以前房屋销售的邮政编码,然后按年份对它们进行分组,因此我正在寻找这样的结果:
2043 avg price was £158,000
2013 avg price was £135,000
2012 avg price was £128,000
and so on.
我的数据是这样存储在我的数据库中的:
Date Street PostCode Price
2014-03-24 00:00 24 HATHERLEY AVENUE L23 0SD 192500
2013-03-24 00:00 12 staley road L23 0SR 185000
2014-03-24 00:00 1 miitchell road L23 0SD 212000
2013-03-24 00:00 2 black grove L23 2PL 95000
2014-03-24 00:00 73 mark road L23 4PL 275000
我有以下 SQL 查询:
SELECT * FROM PricePaid ,
WHERE postCode = '$loc'
ORDER BY Date DESC ");
我目前正在返回结果并使用 php 计算所有平均值。我知道有一种方法可以在 mysql 中执行此操作,因为该数据库有数百万行,我正在寻找一种流水线方式来执行此操作。
我的 mysql 不是那么好,可以用某种方式向我解释我如何对年份进行分组,然后按年份计算每个特性,还可以计算价格以及获得销售的特性总数和年度总价,这样我就可以了计算平均值。
非常感谢
最佳答案
使用GROUP BY
SELECT YEAR(Date) AS year, AVG(Price) AS avg_price
FROM PricePaid
WHERE postCode = '$loc'
GROUP BY year
ORDER BY year DESC
关于php - mysql group by 使用未格式化的日期和自动求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24481041/