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]