Я попытался отправить запрос SQL с LEFT JOIN, но он не отображает данные из таблицы table2
.left join with ActiveRecord (yii2)
public static function top($limit)
{
return self::findBySql("
SELECT * FROM table 1 g1
LEFT JOIN table2 s1
ON (g1.id = s1.g_id AND s1.id = (
SELECT MAX(id)
FROM table2 s2 WHERE s2.g_id = g1.id
))
LIMIT :limit",
[':limit' => $limit]
)->all();
}
Вы должны добавить столбцы из table2, а также для вашего выбора пункта. –
@ PawełDuda, я попробовал. Я получил тот же результат. – HiWo
Попробуйте это: SELECT * FROM таблица 1 g1 LEFT JOIN таблица2 s1 ВКЛ (g1.id = s1.g_id) где s1.id = ( SELECT MAX (ID) ОТ таблица2 с2 ГДЕ s2.g_id = g1.id ) LIMIT: limit – ankitr