Criterios do WHERE em jdbc/mysql

7 respostas
C

galera… tentei de algung jeitos e nao deu certo…

eu tenho uma combobox q da pra vc seleciona as regioes do brasil (centro-oeste, norte e etc)…

dai tenho um array list cm as siglas dos estados de cada regiao…

aqui vai a query que to tentando faze… mais nao funciona

query = "SELECT Nome,Cidade,Estado,DDD,Telefone FROM fornecedores WHERE Nome LIKE '%"+nome+"%' AND Cidade LIKE '%"+cidade+"%' AND Estado='"+sul[1]+"' AND Estado='"+sul[2]+"' AND Estado='"+sul[3]+"'";

assim nao da certo. .ele nao retorna nada na busca e tm valores iguais ao sul[1], sul[2], sul[3] cadastrados na tabela do banco…

o qq ta de errado aqui??

eu sei q eh a forma que coloquei… mais qual eh a cerrta… tentei algmas outras mais deu errado tmb

[]s

7 Respostas

Zeed01

A condição:
“Estado=’”+sul[1]+"’ AND Estado=’"+sul[2]+"’ AND Estado=’"+sul[3]+"’";

Esta sendo satisfeita ?

Quer dizer,suponha que ESTADO seja igual a São Paulo, ela só seria verdadeira se SUL[1] = São Paulo E SUL[2] = São Paulo E SUL[3] = São Paulo

C

nao… cada sul[n] eh um estado diferente… eu qro q procure esses diferentes criterios… nao tm como?

Zeed01

Então não deveria ser:
(Estado=’"+sul[1]+"’ OR Estado=’"+sul[2]+"’ OR Estado=’"+sul[3]’)

?

C

ehh isso ai… vlww… funfo…

nao sabia q dava pra usar or =)

C

nao… mais tm uma coisa… o OR so tm q funfa pro Estado

nao pro resto… agora ele tambem vale pro resto "/

nao sei se me entenderam… tipo… ele axa um cara cm o nome q nao existe agora se eu selecionei algm estado que tenha na lista…

Zeed01

vc não esqueceu dos parenteses:

query = “SELECT Nome,Cidade,Estado,DDD,Telefone FROM fornecedores WHERE Nome LIKE '%”+nome+"%’ AND Cidade LIKE ‘%"+cidade+"%’ AND (Estado=’"+sul[1]+"’ OR Estado=’"+sul[2]+"’ OR Estado=’"+sul[3]+"’)";

C

hmm ai… deu certo… vlww =)

Criado 15 de maio de 2007
Ultima resposta 16 de mai. de 2007
Respostas 7
Participantes 2