cláusula like no mysql

estou desenvolvendo um programa com a acesso ao SGBD MySQL e encontrei uma pedra no caminho. Quando envio um comando sql com uma cláusula like não funciona. EX :

String letra_n;
sql = “SELECT * FROM cliente WHERE nome LIKE '”+letra_n+"*’";

e mesmo tentando esse comando no console do MySQL, o resultado da consulta é vazio mesmo tendo nomes que iniciam com a letra. Se existir outra maneira de fazer, ficaria grato em saber.

Obrigado pela atenção

use assim


 sql = "SELECT * FROM cliente WHERE nome LIKE '%"+letra_n+"%'"; 

Dê uma olhada para entender o uso do like http://www.1keydata.com/sql/sqllike.html

falto os simbolos de % faca como o amigo joede.fadel disse acima

vlws

no galera valeu
rodou perfeitamente
BRIGADÃO :smiley:

i have the following problem:
Eu tenho uma sentença de 1 banco de dados “NEWS” de 3 dados --> (Newid, Data, Categoria)

eu quero buscar os numeros pares do (newid)
que sejam maior que 7 dias atras (data)
e que pertençam a categoria tal (Categoria)

em minha sentença eu consegui fazer assim:

SELECT * FROM news WHERE categoria = ‘".$_GET[‘categoria’]."’ AND news.data >= ‘".$dat."’ AND news.newid LIKE ‘%0’ or news.newid LIKE ‘%2’ or news.newid LIKE ‘%4’ or news.newid LIKE ‘%6’ or news.newid LIKE ‘%8’

mas ela nao funciona como eu quero, pois colocando a expressão “or” ela vai deixar que (newsid de numeros pares sem ser da categoria que quero aparecer)

as minhas buscas deram na seguinte expressão onde defino numeros pares em um unico argumento:

WHERE news.newid LIKE ‘%[0-2468]’

mas ela nao funciona de jeito nenhum. por favor me ajudem

Tens de colocar parênteses nas condições do OR.

... AND (... OR ... OR ... OR ... ) 

[quote=leolima003]i have the following problem:
Eu tenho uma sentença de 1 banco de dados “NEWS” de 3 dados --> (Newid, Data, Categoria)

eu quero buscar os numeros pares do (newid)
que sejam maior que 7 dias atras (data)
e que pertençam a categoria tal (Categoria)

em minha sentença eu consegui fazer assim:

SELECT * FROM news WHERE categoria = ‘".$_GET[‘categoria’]."’ AND news.data >= ‘".$dat."’ AND news.newid LIKE ‘%0’ or news.newid LIKE ‘%2’ or news.newid LIKE ‘%4’ or news.newid LIKE ‘%6’ or news.newid LIKE ‘%8’

mas ela nao funciona como eu quero, pois colocando a expressão “or” ela vai deixar que (newsid de numeros pares sem ser da categoria que quero aparecer)

as minhas buscas deram na seguinte expressão onde defino numeros pares em um unico argumento:

WHERE news.newid LIKE ‘%[0-2468]’

mas ela nao funciona de jeito nenhum. por favor me ajudem [/quote]

tente isolar a parte dos números pares com o parenteses

SELECT * FROM news WHERE categoria = ‘".$_GET[‘categoria’]."’ AND news.data >= ‘".$dat."’ AND (news.newid LIKE ‘%0’ or news.newid LIKE ‘%2’ or news.newid LIKE ‘%4’ or news.newid LIKE ‘%6’ or news.newid LIKE ‘%8’ )

Antes qualquer newid que fosse par seria exibido, mesmo que em OUTRA categoria ou data…

rapaz! era exatamente isso que eu estava buscando e nunca tinha pensado nessa ideia!

vlw ae pessoal!

queria tambem oferecer minha ajuda caso alguem esteja com projetos e precisando de ajuda!

uma fraternidade pensando junto podemos conseguir muita coisa boa!

http://projetodonunca.comindwork.com <-- otimo sites pra organizar projetos!