Ir para conteúdo

POWERED BY:

Arquivado

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

mauroshikay

Problema com SQL do mesmo dado em multipos campos

Recommended Posts

Olá A todos, estou com um problema em select pepino, preciso que que ao pesquisar ele busque determinado dado em 2 campos e outro valor em um terceiro campo e me retorne caso algum dos três seja verdadeiro, para isto eu utilizei a Clausula OR, mas acontece que se eu uso, ele não respeita mais as regras posteriores. Vejam abaixo o meu select se possivel me falassem o que estou errando.

 

Por exemplo no select abaixo, ele me tráz tambem pessoas do sexo masculino!

 

 

select DISTINCT 
	a.id Codigo, 
	a.nome Nome, 
	a.cpf Cpf, 
	a.data_cadastro Cadastro 
from cadastros a 
WHERE 
(a.cargo_1 = 226) OR (a.cargo_2 = 226) OR (lower(a.cargo_3) like 'administrativo%') 
AND a.sexo = 'F' 
AND a.nascimento BETWEEN (-19-01-01 AND -27-12-31) 
AND a.escolaridade >= 10  
AND lower(a.curso_escolaridade) like'administração%' 
AND  a.data_exclusao is null 
ORDER BY nome

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta

 

select DISTINCT

a.id Codigo,

a.nome Nome,

a.cpf Cpf,

a.data_cadastro Cadastro

from cadastros a

WHERE

( (a.cargo_1 = 226) OR (a.cargo_2 = 226) OR (lower(a.cargo_3) like 'administrativo%') )

AND a.sexo = 'F'

AND a.nascimento BETWEEN (-19-01-01 AND -27-12-31)

AND a.escolaridade >= 10

AND lower(a.curso_escolaridade) like'administração%'

AND a.data_exclusao is null

ORDER BY nome

Compartilhar este post


Link para o post
Compartilhar em outros sites

select DISTINCT

a.id Codigo,

a.nome Nome,

a.cpf Cpf,

a.data_cadastro Cadastro

from cadastros a

WHERE

(a.cargo_1 = 226) OR (a.cargo_2 = 226) OR (lower(a.cargo_3) like 'administrativo%')

AND a.sexo = 'F'

AND a.nascimento BETWEEN (-19-01-01 AND -27-12-31)

AND a.escolaridade >= 10

AND lower(a.curso_escolaridade) like'administração%'

AND a.data_exclusao is null

ORDER BY nome

 

 

 

((a.cargo_1 = 226) OR (a.cargo_2 = 226) OR (lower(a.cargo_3) like 'administrativo%'))

aqui precisa de mais paretesis como o motta botou,

 

e

AND a.nascimento BETWEEN (-19-01-01 AND -27-12-31)

nao eh uma clausula valida pois -19-01-01 nao eh uma data q o banco entenda, tem q ser no seguinte formato: '2009-12-30' (30/12/2009)

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.