Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

438
Visualizações
query and subquery join in laravel

i m trying this on laravel but i m getting error like this

SQLSTATE[42601]: Syntax error: 7 ERROR: subquery in FROM must have an alias
 LINE 3: (select * from subcategory a inner join s...
HINT: For example, FROM (SELECT ...) [AS] foo. (SQL: select * from 
mastercategory c
inner join 
 (select * from subcategory a inner join subling b on 
a.idsubcategory=b.idsubcategory_subcategory) on c.idcategory=a.idsubcategory_subcategory 

i m trying to join mastercatergory with subquery of join of (subcategory and subling)

   $users = DB::select(DB::raw(" select *  from mastercategory c
            inner join  (select * from subcategory a inner join subling b on 
            a.idsubcategory=b.idsubcategory_subcategory) on 
            c.idcategory=a.idsubcategory_subcategory "))->get();

how i can accomplised this i don't want to use model thanks in advance

here is my update

   $users  =   DB::raw(" select a.*,b.*  from mastercategory a
                  inner join  
               (select b.*,c.* from subcategory b inner join subling c  on  
           b.idsubcategory=c.idsubcategory_subcategory) on 
          a.idcategory=b.idcategory_mastercategory"); 

why i m getting empty value

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

 $users = DB::select("select *  from mastercategory c
            inner join  (select * from subcategory a inner join subling b on 
            a.idsubcategory=b.idsubcategory_subcategory) as d on 
            c.idcategory=d.idsubcategory_subcategory");

When you use DB::select it execute the statement and return the result. You don't need to use get and DB::raw with it (check here).

You were getting this error because you didn't provide the alias for inner subquery.

over 4 years ago · Santiago Trujillo Relatório

0

You have to name each subquery. For example, use this:

select * from mastercategory c
inner join 
  (select * from subcategory a 
   inner join subling b on a.idsubcategory=b.idsubcategory_subcategory) as sub 
on c.idcategory=sub.idsubcategory_subcategory

I've added the bolded part: a.idsubcategory=b.idsubcategory_subcategory) as sub

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda