Ordenar Select com like

Delphi

29/07/2009

Fala Galera,

Estou precisando saber como eu faço para ordenar esse select com o Like,

Tipo quando faça o like ele me mostra os resultados ai eu queria ordenar por NOME e depois EMPRESA

dm.dataset.close;
dm.sqldataset.close;
dm.sqldataset.commandtext := ´select cod, nome, empresa, end, end_empresa from t_clientes where like = + QuotedStr(´¬´ + nome_cliente.text + ´¬´ );
dm.dataset.open;

eu queria ordenar isso por dois campos será que alguem sabe ?

Eu Uso Delphi 07 , Firebird 2.0


Valeuuu


Cleiflavio

Cleiflavio

Curtidas 0

Respostas

Acacio

Acacio

29/07/2009

O like não é pra odenar, mas sim para filtrar os registros. Para ordenar ainda é o order by. Mas cuidado com o like o SQL não usa índice e fica muito mais lento.


GOSTEI 0
Osocram

Osocram

29/07/2009

Cleifavio... ficou um pouco confuso o que vc quer.
Mas quem nem o amigo Acacio disse... like não é p ordenar.

Para ordenar teria q fazer o seguinte
dm.sqldataset.commandtext := ´select cod,  nome, empresa, end, end_empresa from t_clientes where like = + QuotedStr(´¬´ + nome_cliente.text + ´¬´ ) + ´ Order by nome,empresa ´;

flw.
Fala Galera, Estou precisando saber como eu faço para ordenar esse select com o Like, Tipo quando faça o like ele me mostra os resultados ai eu queria ordenar por NOME e depois EMPRESA dm.dataset.close; dm.sqldataset.close; dm.sqldataset.commandtext := ´select cod, nome, empresa, end, end_empresa from t_clientes where like = + QuotedStr(´¬´ + nome_cliente.text + ´¬´ ); dm.dataset.open; eu queria ordenar isso por dois campos será que alguem sabe ? Eu Uso Delphi 07 , Firebird 2.0 Valeuuu



GOSTEI 0
Cleiflavio

Cleiflavio

29/07/2009

Galera, eu sei que o Like não serve para ordenar, mas eu tenho uma consulta usando o Like e o pessoal estava me enchendo para que essa consulta vinhese ordenado , pois quando consulta por um nome vem varios nomes e ai seria melhor se vinhesse ordenado.


Valeuu já acertei aquie e deu certo.

Muito Obrigadooooooo


GOSTEI 0
Discorpio

Discorpio

29/07/2009

Bom dia a todos.

Ordenar por Like :?:

Pessoal, além disso existe um erro nesse SQL.

  ´select cod, nome, empresa, end, end_empresa from t_clientes where <Cadê o nome do Campo> like = + QuotedStr(´¬´ + nome_cliente.text + ´¬´ );


O operador like faz uma comparação por substring que fica entre os caracteres curingas que são os porcentos (´¬´), por isso é necessário que ele faça pesquisa em um determinado campo que voce não forneceu após a cláusula Where


GOSTEI 0
POSTAR