Jump to content
Fórum Script Brasil
  • 0

Select dentro de select php


melquides
 Share

Question

Olá, primeiramente desculpem-me pelo título que utilizo, pois não sei como descreve-lo, o que preciso é uma query única que selecione primeiramente por uma coluna de minha tabela, em seguida outra relacionada a mesma(pai). Para facilitar vou explicar minha situação:

Possuo uma tabela categorias em meu banco de dados, a mesma tabela possui uma coluna category_id(primaria) e category_parent(onde quando null, a categoria é uma categoria pai, já quando possui algum valor esta será filha da categoria com o mesmo id). Preciso que minha consulta me retorne algo do tipo:
 
Categoria Pai 1 (category_id = 1, category_parent IS NULL)
   Categoria Filha 1 (category id = 32, category_parent = 1)
   Categoria Filha 2 (category id = 38, category_parent = 1)
   Categoria Filha 3 (category id = 40, category_parent = 1)
   Categoria Filha 4 (category id = 42, category_parent = 1)
Categoria Pai 2 (category_id = 5, category_parent IS NULL)
   Categoria Filha 1 (category_id = 2, category_parent = 5)
   Categoria Filha 2 (category_id = 6, category_parent = 5);
...
 
(Ilustrei os id's para perceberem que a ordenação precise ser bem genérica).
 
Tentei utilizar o código: 
 

SELECT cat.* ,(SELECT sub.* FROM mr_categories sub where sub.category_parent = cat.category_id ) FROM mr_categories cat WHERE category_parent IS NUll

Mas me deparei com o seguinte erro:

Citar

 

SQLSTATE[21000]: Cardinality violation: 1241 Operand should contain 1 column(s)

 
Gostaria de saber se isso é possível e como fazer, desde já agradeço!
 
Obs.: sei como fazer isso através de duas buscas diferente, mas preciso que seja feita em uma só busca para poder utilizar o limite de minha paginação.

Edited by melquides
Link to comment
Share on other sites

1 answer to this question

Recommended Posts

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.6k
    • Total Posts
      646.2k
×
×
  • Create New...