В настоящее время я использую оператор for в PHP, чтобы получить все месяцы для этого оператора SQL, но хотел бы знать, могу ли я сделать все это с помощью SQL.
По сути, мне нужно получить среднюю цену листинга и среднюю цену продажи за каждый месяц, начиная с 1 года, где дата продажи = месяц.
просто с PHP, но это создает 12 попаданий в базу данных.
Я пытаюсь описать SQL-код ниже, но он возвращает списки совершенно не по порядку
SELECT
avg(ListingPrice),
avg(SellingPrice),
count(ListingDate),
DATE(SellingDate) as date,
MONTH(SellingDate) as month,
YEAR(SellingDate) as year
FROM `rets_property_resi`
WHERE Area = '5030'
AND Status = 'S'
AND SellingDate "less then" = 'NOW()'
GROUP BY month
ORDER BY month desc
LIMIT 0,12
«меньше» удаляется из устава, поэтому, пожалуйста, замените «меньше, чем» соответствующим кодом
Выход:
867507.142857 877632.492063 63 1996-12-24 12 1996
971355.833333 981533.333333 60 1997-11-18 11 1997
949334.328358 985453.731343 67 1997-10-23 10 1997
794150.000000 806642.857143 70 1996-09-20 9 1996
968371.621622 988074.702703 74 1997-08-21 8 1997
1033413.366337 1053018.534653 101 1997-07-30 7 1997
936115.054795 962787.671233 73 1996-06-07 6 1996
875378.735632 906921.839080 87 1996-05-16 5 1996
926635.616438 958561.643836 73 2010-04-13 4 2010
1030224.472222 1046332.291667 72 2010-03-31 3 2010
921711.458333 924177.083333 48 1997-02-28 2 1997
799484.615385 791551.282051 39 1997-01-15 1 1997
Как видите, он вытягивает из случайных дат, мне нужно вытащить из 2010-03, 2010-02, 2010-01 и т. Д ...
любая помощь приветствуется!