Сортировать по ставкам из домов с несколькими ставками - PullRequest
0 голосов
/ 05 января 2012

Я занимаюсь разработкой сайта для аренды на время отпуска, и каждый дом имеет несколько ставок Поэтому у меня есть стол дома и стол ставок. Когда я получаю с помощью этого sql

SELECT * 
  FROM homes 
  INNER JOIN rates ON rates.home_id = homes.id 
  GROUP BY homes.id 
  ORDER BY rates.price ASC

результаты не верны. Я получаю смешанные цены и от минимума до максимума. Я думаю, что проблема в том, что для каждого дома существуют разные ставки. Так как мне найти минимальную ставку и отсортировать по ней?

Ответы [ 2 ]

0 голосов
/ 05 января 2012
SELECT homes.*,r.min_price FROM homes INNER JOIN
(SELECT home_id,MIN(price) min_price FROM rates GROUP BY home_id) r
ON r.home_id = homes.id
ORDER BY r.min_price;
0 голосов
/ 05 января 2012
SELECT * FROM homes INNER JOIN rates ON rates.home_id = homes.id GROUP BY homes.id ORDER BY min(rates.price) ASC
...