Eu concordo com o Rubem, eu faria a mesma coisa.

 

Tivemos um problema parecido a um tempo atrás na ordenação de campos com 
acentuação.

Para fugir da solução do "CHARSET"  dos bancos, criamos um novo campo (que 
somente é criado quando o programador quiser)

E nesse novo campo colocávamos a mesma string mas sem acentuação e ordenávamos 
por esse novo campo.

Funcionou que nem uma luva.. e não dependíamos mais do charset.

 

 

 

De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Rubem 
Nascimento da Rocha
Enviada em: quarta-feira, 2 de janeiro de 2008 02:24
Para: delphi-br@yahoogrupos.com.br
Assunto: RE: [delphi-br] Ordenas campo string para relatorio
Prioridade: Alta

 



Só com SELECT puro? Meio brabo! Vc teria que construir alguma informação com 
base no campo que quer ordenar, e essa informação deveria ser composta de tal 
maneira a corresponder à ordem que vc deseja. Particularmente, eu pegaria o 
result set dessa consulta e a usaria pra alimentar um clientdataset onde nele 
eu criaria esse campo, sendo que nesse clientdataset, eu criaria um campo 
especial onde nele construiria o valor correspondente ao campo que quer 
ordenar, e ordenaria por ele.

Como compor o valor desse campo? Ora, simples! Se já se tem a regra como vc 
explicou (ordenar sem levar em conta as letras do campo, e sim números), 
criaria o campo alimentando ele, para cada registro, e ordenaria o 
clientdataset por esse campo novo.

Bem melhor do que ter um trabalho maior ainda e tentar montar um SELECT puro 
pra ordenar do jeito que vc quer. Só pra começar, dependendo da quantidade de 
registros que precisaria ordenar, o mecanismo SQL do banco de dados tentaria 
fazer um SORT, ou seja, ordenar o result set. E isso pode demorar dependendo da 
quantidade de registros que o SELECT vai retornar.

Outra coisa, aqui esbocei uma sugestão de solução genérica, pra ser usada em 
qualquer banco de dados, e sem ficar na dependência de função X() ou Y() de um 
banco Fulano ou Sicrano.

Sds.

________________________________

To: delphi-br@yahoogrupos.com.br <mailto:delphi-br%40yahoogrupos.com.br> 
From: [EMAIL PROTECTED] <mailto:ciomar_rs%40yahoo.com.br> 
Date: Tue, 1 Jan 2008 22:28:30 -0300
Subject: [delphi-br] Ordenas campo string para relatorio

Olá gostaria de saber como faço para ordenar em ordem crescente um campo tipo 
String que contem 'numero' e também 'numeros e letras'. Ordenar sem levar em 
conta as letras somente os numeros usando comando select, tem como?

---------------------------------
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!

[As partes desta mensagem que não continham texto foram removidas]

__________________________________________________________
Veja mapas e encontre as melhores rotas para fugir do trânsito com o Live 
Search Maps!
http://www.livemaps.com.br/index.aspx?tr=true

 



[As partes desta mensagem que não continham texto foram removidas]

Responder a