Senhores, Se me permitem dar um pitaco, eu não estou entendendo porque este assunto está gerando tanta polêmica.
2 fatores tem que ser considerados nesta questão: 1) Se o banco está utilizando indice para a composição do ORDER BY 2) A quantidade de registros Vamos aos casos: CASO A: Grande quantidade de registros e campo não indexado usando ORDER BY O ORDER BY no banco é demorado - Perde-se muito tempo O Tráfego é X tempo para preencher o ClientDataSet Não há necessidade de ordenar no CDS pois os dados já o estão. CASO B: Grande quantidade de registros e campo indexado usando ORDER BY O ORDER BY no banco é rápido - Perde-se pouco tempo O Tráfego demora X tempo para preencher o ClientDataSet Não há necessidade de ordenar no CDS pois os dados já o estão. CASO C: Grande quantidade de registros e campo indexado ou não e NÃO usando ORDER BY Como não há ORDER BY no banco não há perda de tempo O Tráfego demora X tempo para preencher o ClientDataSet HÁ necessidade de ordenar no CDS pois os dados já o estão - Pouca demora pois os dados estão na memória Caso IDEAL: Campo Indexado e com o uso de ORDER BY, pois, o tempo para indexação é tão pequeno que não se justifica buscar os dados desordenados e ordenar na memoria. O colega tem razão quando diz que perde-se tempo no tráfego, concordo com ele. Agora, temos que analisar qual a circunstância deste processo, pois, com o advento do SQL, o uso de grande quantidade de dados trafegando na rede foi banida a muito tempo e é usado em ocasiões específicas como relatorios etc.. Portanto, indexar dados tanto no servidor como localmente é operações rápidas que não levam mais do que 10ms. É isso aí pessoal.. Vamos pra outro tópico? []Os Joel > Certo, eu entendi o que vocês querem dizer, eu utilizo a ordenação no > TClientDataSet também. > > Mas por exemplo, utilizando o IBExpert mesmo, façam um select sem order by e > vejam na análise quantos registros foram lidos e o tempo de resposta do > pacote, agora utilizem order by... o tempo é infinitamente menor, não tem > comparação. > > Seguindo essa lógico, um clientdataset que trazer um pacote de registros sem > order by, vai demorar mais do que um que traga com order by, pq a questão é > o select em si... o pacote de registros vai trafegar na rede de qualquer > maneira. Não? > > > > Vitor. > > > > _____ > > De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em > nome de Walter Alves Chagas Junior > Enviada em: quarta-feira, 3 de outubro de 2007 17:02 > Para: delphi-br@yahoogrupos.com.br > Assunto: RES: [delphi-br] DBexpress e Firebird > > > > Uma coisa é você ordenar um dataset já pronto em memória local, outra é > fazer isto em trafego na rede e dando um trabalho adicional ao SGBD > > []s > > Walter Alves Chagas Junior > Projeto e desenvolvimento de sistemas > Telemont Engenharia de telecomunicações S/A > Belo Horizonte - MG - Brasil > [EMAIL PROTECTED] <mailto:wchagas%40telemont.com.br> com.br > Fone: (31) 3389-8217 Fax: (31) 3389-8215 > > Code Gear: > http://cc.codegear. <http://cc.codegear.com/Author/46502> com/Author/46502 > > -----Mensagem original----- > De: [EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> os.com.br > [mailto:[EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> > os.com.br] Em nome de Vitor Redes > Enviada em: quarta-feira, 3 de outubro de 2007 16:34 > Para: [EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> os.com.br > Assunto: RES: [delphi-br] DBexpress e Firebird > > Mas, teoricamente, o ORDER BY é o que dita se o select vai ser indexado ou > não. Carregar um select sem índice em memória para depois organiza-lo, > seguindo essa lógica, demoraria muito mais. > > Vitor. > > _____ > > De: [EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> os.com.br > [mailto:[EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> > os.com.br] Em nome de Bruno Lichot Enviada em: quarta-feira, 3 de outubro de > 2007 15:53 > Para: [EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> os.com.br > Assunto: RES: [delphi-br] DBexpress e Firebird > > Não e aconselhavel o uso de order by e clausulas SQL por conta do peso de > processamento q este usa, o ideal e usar no clientdataset índices em memória > q fazem a mesma coisa so q menos custoso e mais rápido. > > No meu exemplo do dd 8 mostra como fazer isso > > http://cc.codegear. <http://cc.codegear. > <http://cc.codegear.com/Author/795118> com/Author/795118> com/Author/795118 > > abs > > BL > > De: [EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> os.com.br > [mailto:[EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> > os.com.br] Em > nome de Marcelo Mendes de Oliveira > Enviada em: quarta-feira, 3 de outubro de 2007 14:02 > Para: [EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> os.com.br > Assunto: RES: [delphi-br] DBexpress e Firebird > > Nenhum problema só quero saber o porque que isto acontece, pois até então > nunca tinha visto este tipo de bug > > Marcelo Mendes de Oliveira > Analista de Informática > Tel.: + 49 3551-0177 > Fax: + 49 3541-0423 > IGUAÇU - celulose, papel s.a > www.iguacucelulose.com.br <http://www.iguacuce <http://www.iguacuce > <http://www.iguacucelulose.com.br/> lulose.com.br/> lulose.com.br/> > P Antes de imprimir pense em sua responsabilidade e compromisso com o MEIO > AMBIENTE! Before printing this document, think about your responsibility and > care for the ENVIRONMENT! > > _____ > > De: [EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> os.com.br > <mailto:delphi-br%40yahoogrupos.com.br> > [mailto:[EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> > os.com.br <mailto:delphi-br%40yahoogrupos.com.br> > ] Em > nome de Davi Eduardo Borges Wall > Enviada em: quarta-feira, 3 de outubro de 2007 13:51 > Para: [EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> os.com.br > <mailto:delphi-br%40yahoogrupos.com.br> > Assunto: RES: [delphi-br] DBexpress e Firebird > > Qual seria o problema em utilizar o OrderBy? > > De: [EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> os.com.br > [mailto:[EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> > os.com.br] Em nome de Marcelo Mendes de Oliveira > Enviada em: quarta-feira, 3 de outubro de 2007 13:14 > Para: [EMAIL PROTECTED] <mailto:delphi-br%40yahoogrupos.com.br> os.com.br > Assunto: [delphi-br] DBexpress e Firebird > > Boa Tarde Pessoal, > > Gostaria de saber se algum amigo sabe o que acontece quando o client Dataset > trás os dados desordenados, tipo ele traz assim 40, 41, 42, 43, 50, 44, 45, > 46, 51, 47, 48, 49 e não na ordem como está na base de dados, ai para que > ele ordene eu tenho que dar um order by no SQLDataSet. > > Alguém sabe como resolver isto?? > > Obrigado pela ajuda > > Marcelo Mendes de Oliveira > Analista de Informática > Tel.: + 49 3551-0177 > Fax: + 49 3541-0423 > IGUAÇU - celulose, papel s.a > www.iguacucelulose.com.br <http://www.iguacuce <http://www.iguacuce > <http://www.iguacuce <http://www.iguacucelulose.com.br/> lulose.com.br/> > lulose.com.br/> lulose.com.br/> > P Antes de imprimir pense em sua responsabilidade e compromisso com o MEIO > AMBIENTE! Before printing this document, think about your responsibility and > care for the ENVIRONMENT! > > [As partes desta mensagem que não continham texto foram removidas] > > [As partes desta mensagem que não continham texto foram removidas] > > [As partes desta mensagem que não continham texto foram removidas] > > __________ Informação do NOD32 IMON 2569 (20071003) __________ > > Esta mensagem foi verificada pelo NOD32 sistema antivírus http://www.eset. > <http://www.eset. <http://www.eset.com.br> com.br> com.br > > [As partes desta mensagem que não continham texto foram removidas] > > [As partes desta mensagem que não continham texto foram removidas] > > -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> <*> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages <*> Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html