I have this code:
$classic_games_money = DB::table('bets') ->where('user_id', $this->user->id) ->sum('price');
It displays the amount of income, but i need to display this information only if the user id indicated in the winner_id
column in games
table. That is, how can I connect another table in this query?
Advertisement
Answer
You don’t need join
here, exists
will be enough. I guess you have game_id
column in bets
table.
$classic_games_money = DB::table('bets') ->where('user_id', $this->user->id) ->whereExists(function ($query) { $query ->selectRaw(1) ->from('games') ->whereRaw('games.id = bets.game_id') ->whereRaw('games.winner_id = bets.user_id'); }) ->sum('price');