Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal sei que parece que minha dúvida é repetida, mas preciso de um if/else bem complicado,
Tenho uma tabela:
LOCAL | TIPO | VALOR
1 |b |15.00
2 |c |30.00
Eu preciso fazer a consulta no mysql que faça da seguinte forma
"Select * from tabela if(local = 1 and tipo = c)else(local = 2 and tipo = B)"
Ele teria que me retornar os campos, pois preciso do campo valor.
Desde já agradeço
Eu preciso pegar o campo VALOR referente a condição que o if/else fizer. O problema tá nisso. Eu tenho um local que seria cidade(tipo = c) ou bairro(tipo = B), eu recebo, por exemplo o endereço "rua 1 bairro jaca cidade tatu". Em minha consulta devo ver se existe tatu no campo local que o tipo seja c(cidade), se não ele ve se tem jaca no campo local que o campo tipo seja b(bairro), então no php pego o campo valor do resultado.
Bom, então exemplificando estruturadamente seria mais ou menos assim:
-> Receber uma string ENDERECO que contém "rua 1 bairro jaca cidade tatu";
-> Verificar o campo TIPO:
---> Se TIPO for **b** de BAIRRO, eu vou verificar no campo LOCAL se existe ''jaca'';
---> Se TIPO for **c** de CIDADE, eu vou verificar no campo LOCAL se existe ''tatu'';
------> De acordo com a condição acima, pego o VALOR do registro que estiver se encaixando na mesma.
É isto?
Caso seja:
Se você puder postar alguns dados reais que tem na tua tabela e a estrutura da mesma fica melhor.
Fico no aguardo pra ajudar, abrass =]
Obrigado pela ajuda Diego!
É isso mesmo, eu pego os dados separados do site republica virtual e consigo tratar dinamicamente com php. Meu maior problema é que não sei construir essa query no mysql.
Um dado real:
Eu pego a query
http://republicavirtual.com.br/web_cep.php?cep=06716659&formato=query_string
Ela me retorna todos os campos separados;
Devo construir a query mysql que verifica se existe WHERE LOCAL = 'Cotia' AND TIPO = 'c';
Caso não exista WHERE LOCAL = 'Jardim Lina' AND TIPO = 'b';
Eu tenho o LOCAL = 'Jardim Lina' AND TIPO = 'b' com VALOR = '15,00';
Eu pego
mysql_fetch_array($sql)
o campo VALOR me retornando 15,00.
Entendi. Não seria mais ou menos isso?
SELECT * FROM TABELA WHERE ((LOCAL = 'Cotia' AND TIPO = 'c') OR (LOCAL = 'Jardin Lina' AND TIPO = 'b'));
Dá erro de syntax #1064
Desculpa, está certo.
É que eu apenas copiei e colei mas tem um ( a mais. É isso mesmo.
Obrigado Diego!!!
Eu não sei como colocar o tópico resolvido.
Pode deixar que os moderadores colocam =]
Nada cara, precisando aparece ae. Abraço.
Bom dia =]
Cara não entendi o que você queria com essa query ali... O IF que tu quer fazer serve pra que? Pra dizer o que você quer retornar ou pra dizer o que filtrar?