Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rockrgo

where and like

Recommended Posts

Boa tarde pessoal,

 

estou tentando o seguinte select

SELECT  `a`.*, `s`.`nome` AS subcategoria,  `c`.`nome` AS categoria,  `cont`.`titulo` AS conteudo
FROM (
`arquivos` a
)
JOIN  `pasta_arquivos` pa ON  `pa`.`id` =  `a`.`pasta_arquivos_id` 
JOIN  `conteudo` cont ON  `cont`.`id` =  `pa`.`conteudo_id` 
JOIN  `categorias` c ON  `c`.`id` =  `cont`.`categorias_id` 
LEFT JOIN  `subcategorias` s ON  `s`.`id` =  `cont`.`subcategorias_id` 
WHERE  `a`.`pasta_arquivos_id` =  '3'
AND  `a`.`nome` LIKE  '%%'
OR  `cont`.`titulo` LIKE  '%%'
OR  `c`.`nome` LIKE  '%%'
OR  `s`.`nome` LIKE  '%%'
ORDER BY  `a`.`nome` ASC

minha dúvida está nesta parte

WHERE  `a`.`pasta_arquivos_id` =  '3'

este select deveria me retorna somente os registros com pasta_arquivos_id = 3, porém está me retornando outros valores tbm.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você só precisa colocar um parenteses:

 

SELECT  `a`.*, `s`.`nome` AS subcategoria,  `c`.`nome` AS categoria,  `cont`.`titulo` AS conteudo
FROM (
`arquivos` a
)
JOIN  `pasta_arquivos` pa ON  `pa`.`id` =  `a`.`pasta_arquivos_id` 
JOIN  `conteudo` cont ON  `cont`.`id` =  `pa`.`conteudo_id` 
JOIN  `categorias` c ON  `c`.`id` =  `cont`.`categorias_id` 
LEFT JOIN  `subcategorias` s ON  `s`.`id` =  `cont`.`subcategorias_id` 
WHERE  `a`.`pasta_arquivos_id` =  '3'
AND  (`a`.`nome` LIKE  '%%'
OR  `cont`.`titulo` LIKE  '%%'
OR  `c`.`nome` LIKE  '%%'
OR  `s`.`nome` LIKE  '%%')
ORDER BY  `a`.`nome` ASC

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Você só precisa colocar um parenteses:

 

SELECT  `a`.*, `s`.`nome` AS subcategoria,  `c`.`nome` AS categoria,  `cont`.`titulo` AS conteudo
FROM (
`arquivos` a
)
JOIN  `pasta_arquivos` pa ON  `pa`.`id` =  `a`.`pasta_arquivos_id` 
JOIN  `conteudo` cont ON  `cont`.`id` =  `pa`.`conteudo_id` 
JOIN  `categorias` c ON  `c`.`id` =  `cont`.`categorias_id` 
LEFT JOIN  `subcategorias` s ON  `s`.`id` =  `cont`.`subcategorias_id` 
WHERE  `a`.`pasta_arquivos_id` =  '3'
AND  (`a`.`nome` LIKE  '%%'
OR  `cont`.`titulo` LIKE  '%%'
OR  `c`.`nome` LIKE  '%%'
OR  `s`.`nome` LIKE  '%%')
ORDER BY  `a`.`nome` ASC

 

Simples assim! Valeu Roberto!

As vezes na correria vc deixa de pensar nas soluções mais simples!

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.