Дублированные строки, которые не совпадают на Laravel - PullRequest
0 голосов
/ 05 декабря 2018

Я делаю запрос в Laravel, в этом запросе мне нужно объединить две таблицы для получения информации, проблема в том, что единственный параметр, к которому я могу присоединиться, не уникален.Поэтому, когда я печатаю результаты вместо того, чтобы получить что-то вроде

a - 1
b - 2
c - 3

, я получаю

a - 1
a - 2
a - 3
b - 1
b - 2
b - 3

Запрос следующий:

$hist = DB::table('codigo')
                ->join('llamada', 'codigo.idPaciente', '=', 'llamada.id_paciente')
                ->where('llamada.status_llamada', 'Finalizada')
                ->whereRaw('llamada.fecha_inicio > DATE_SUB(codigo.created_at, INTERVAL 6 HOUR)')
                ->whereRaw('llamada.fecha_inicio < DATE_ADD(codigo.created_at, INTERVAL 48 HOUR)')
                ->where(function($query){
                    $query->where('llamada.status_pago', '=', 'Sis')
                    ->orWhere('llamada.status_pago', '=', 'RedSis');
                })
                ->where(function($query){
                    $query->where('llamada.rec', '=', 1)
                    ->orWhereNotNull('llamada.ord')
                    ->orWhereNotNull('llamada.inter');
                })
                ->get();

WhereRawsпункты для некоторых правил, которые мне нужны, чтобы получить правильный результат, но я все еще получаю дубликаты, потому что иногда в этот диапазон входит несколько данных.

Есть предложения по улучшению этого?Спасибо!

...