我在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子句用于某些规则,我需要这些规则以获得正确的结果,但由于有时有时会在该范围内输入多个数据,因此仍然会重复。
是否有任何改善建议?谢谢!