Я пытаюсь получить записи из двух таблиц.
1 - токены
2 - транзакции
В обеих таблицах есть один и тот же столбец user_id
, а в таблице tokens
есть transaction_id
. Я пытаюсь получить все транзакции, имеющие отношение к token
. Я пытаюсь следовать
$EarnedData = Token::whereIn('user_id', $descendants)
->whereHas('transaction', function($q){
$q->where('custom', '!=', 'BB')->orWhereNull('custom');
})->sum('amount');
После отладки я получил необработанный запрос из вышеприведенного скрипта, следующий за
select sum(`amount`) as aggregate from `tokens`
where
`user_id` in (15, 49, 58,117, 119, 120, 130, 13)
and exists
(select * from `transactions` where `tokens`.`transaction_id` = `transactions`.`id`
and (`custom` != 'BONUS' or `custom` is null))
Когда я выполняю запрос, который получил NULL
, может кто-нибудь любезно подсказать мне, почему запрос не получает запись. Я хотел бы оценить.