0
我會如何在eloquent/query builder中編寫像這樣的查詢語句?查詢哪裏有多個嵌套的帶連接的嵌套select語句。 任何幫助將不勝感激。Laravel Eloquent/QueryBuilder多重嵌套選擇
Select
s.user_id,
s.user_name,
s.`user_firstname`,
s.`user_lastname`,
s.user_photo,
max_rank_timestamp,
max_friend_timestamp
FROM
(
SELECT
Users.user_id,
Users.`user_name`,
Users.`user_firstname`,
Users.`user_lastname`,
`Users`.`user_photo`,
MAX(Ranks.rank_timestamp) AS max_rank_timestamp
FROM
`Users`
LEFT JOIN Ranks ON Ranks.user_id = Users.user_id
WHERE
Users.user_is_active = 1
GROUP BY
Users.user_id
) s
LEFT JOIN (
SELECT
Users.user_id,
MAX(Relationship.timestamp) AS max_friend_timestamp
FROM
`Users`
INNER JOIN Relationship ON Relationship.user_one_id = Users.user_id
WHERE
Users.user_is_active = 1
GROUP BY
Users.user_id
) p ON s.user_id = p.user_id
) t
ORDER BY
`user_name` ASC
用戶模型
public function ranks(){
return $this->hasMany('App\Rank','user_id','user_id');
}
public function relationships(){
return $this->hasMany('App\Relationship','user_one_id','user_id');
}
序列模型
public function user(){
return $this->belongsTo('App\User','user_id','user_id');
}
關係模型
public function user(){
return $this->belongsTo('App\User','user_id','user_one_id');
}
您是否在您的用戶模型上設置了「Relationship」和「Ranks」關係? –
是的我在用戶模型的關係。 –
用戶的等級和關係有一對多的關係。 @RossWilson –