@JoneCode

Как переделать sql запрос правильно?

Помогите переделать sql запрос правильно под Yii
Использую на данный момент такой запрос в controllere:
$query = "SELECT * FROM products_related JOIN products ON products.id = products_related.related_id WHERE products_related.product_id = 2";


Пытаюсь переделать на такой запрос:

//$relatedss = RelatedAssignment::find()
        ->select('*')
        ->leftJoin('products', '`products.id` = `products_related`.`related_id`')
        ->where(['products_related.product_id' => 1])
        ->all();


Скажите, где я допускаю ошибку?
  • Вопрос задан
  • 105 просмотров
Решения вопроса 1
kawabanga
@kawabanga
Сначала настройте связи https://github.com/yiisoft/yii2/blob/master/docs/g... (hasOne, hasMany).

Дальше ваш запрос будет выглядеть так:
RelatedAssignment::find()->andWhere(['products_related.product_id' => 1])
->with(['products']) // опционально, читайте про жадную загрузку        
->all();
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы