iova1984
Новичок
Здравствуйте! Начал изучать ORM. По докам - всё понятно. Но на практике - путаница!
marks_table:
id
name
models_table
id
name
mark_id
auto_table
id
name
price
model_id
Тоесть, таблица моделек содержит в себе mark_id, к которой она относится, а таблица автомобилей содержит model_id (по ней и можно марку определить). Задача - вывести список МАРОК (только марок), у которых ЕСТЬ автомобили. И для каждой марки - число авто этой марки.
Обычный MySQL запрос у меня таков:
SELECT marks.name, COUNT(auto.id) AS Count
FROM auto
INNER JOIN models ON models.id=auto.model_id
INNER JOIN marks ON marks.id=models.mark_id
GROUP BY marks.name ORDER BY marks.name
Никак не пойму как это всё сделать в ORM-стиле. Да и путаница с файлом Модели/Контроллера - что куда писать. Пожалуйста, привелите ясный пример: я хочу его тщательно разобрать чтобы наконец-то уяснить как это всё работает!
marks_table:
id
name
models_table
id
name
mark_id
auto_table
id
name
price
model_id
Тоесть, таблица моделек содержит в себе mark_id, к которой она относится, а таблица автомобилей содержит model_id (по ней и можно марку определить). Задача - вывести список МАРОК (только марок), у которых ЕСТЬ автомобили. И для каждой марки - число авто этой марки.
Обычный MySQL запрос у меня таков:
SELECT marks.name, COUNT(auto.id) AS Count
FROM auto
INNER JOIN models ON models.id=auto.model_id
INNER JOIN marks ON marks.id=models.mark_id
GROUP BY marks.name ORDER BY marks.name
Никак не пойму как это всё сделать в ORM-стиле. Да и путаница с файлом Модели/Контроллера - что куда писать. Пожалуйста, привелите ясный пример: я хочу его тщательно разобрать чтобы наконец-то уяснить как это всё работает!