在Laravel 5.5中如何使用Join子查询?

时间:2019-04-25 16:09:08

标签: php sql laravel laravel-5.5

我有一个表,该表与其他表具有两个关系,但字段相同。

例如:

first_user_in_comment_id & last_user_in_comment_id

因此这些字段与名称用户name_user

有关系

我的laravel版本是5.5

 $conseguirTabla = DB::table('ALUMNOS_HISTORIAL_COMENTARIOS')   
        ->JOIN('CICLOS_ESCOLARES','CICLOS_ESCOLARES.ID','=','ALUMNOS_HISTORIAL_COMENTARIOS.CICLO_ID')
        ->JOIN('USUARIOS','USUARIOS.ID','=','ALUMNOS_HISTORIAL_COMENTARIOS.USUARIO_ID')
       ->JOIN('USUARIOS','USUARIOS.ID','=','ALUMNOS_HISTORIAL_COMENTARIOS.USUARIO_MODIFICACION_ID')
            ->SELECT('USUARIOS.NOMBRE AS NOMBRE', 
                    'CICLOS_ESCOLARES.CICLO_ESCOLAR AS CICLO_ESCOLAR',
                    'ALUMNOS_HISTORIAL_COMENTARIOS.FECHA_COMENTARIO AS FECHA_COMENTARIO',
                    'ALUMNOS_HISTORIAL_COMENTARIOS.COMENTARIO AS COMENTARIO',
                    'ALUMNOS_HISTORIAL_COMENTARIOS.USUARIO_MODIFICACION_ID AS MODIFICACION'
            )   

            ->WHERE('ALUMNO_ID',$idAlumno)         
            ->get();

1 个答案:

答案 0 :(得分:0)

您可以使用DB :: raw例如:

       ->JOIN(\DB::raw('USUARIOS as x'),'x.ID','=','ALUMNOS_HISTORIAL_COMENTARIOS.USUARIO_MODIFICACION_ID')
       ->JOIN(\DB::raw('(select * from USUARIOS) as y'),'y.ID','=','ALUMNOS_HISTORIAL_COMENTARIOS.USUARIO_MODIFICACION_ID')