Array
(
)

Inserir ordem alfabetica

Marilia Silva
   - 07 abr 2015

Pelo SELECT sei que é possivel trazer os dados em ordem alfabetica, mas tem como fazer uma inserção que guarde assim?

Mariana Carvalho
   - 07 abr 2015

Marilia, tenho minhas duvidas mas acho que só com o SELECT mesmo.

https://social.msdn.microsoft.com/Forums/pt-BR/f500bc15-a0f2-4318-a68d-1167aece680f/ordenar-lista-por-ordem-alfabtica-sql?forum=webgeralpt

Marcos P
   - 07 abr 2015

Não existe insert ordenado, pois, considerando que a tabela será atualizada ao longo do tempo, não é possível garantir essa ordem alfabética nas futuras inserções físicas de novos registros.

Se você quiser inserir registros ordenados em uma tabela, ordene-os ( via select ou aplicação ) antes de realizar a inserção e realize o insert.

Mas isso é transitório, não haverá garantia alguma dessa ordem em um segundo insert.

Quanto a recuperação dos dados ordenados, aí sim, um SELECT... ORDER BY resolve seu problema !

Jothaz
   - 07 abr 2015

Só por curiosidade em qual cenário seria usado?

Completando a resposta sempre assertiva do Marcos P, não faz muito sentido fazer insert ordenado.

Afinal você pode ordenar da forma que precisar e pelos campos que quiser. Se for necessário aumentar a performance crie índices.

O custo para manter um insert ordenado não vale o benefício.

Marcos P
   - 07 abr 2015

Obrigado pela deferência, Jothaz !

Jothaz
   - 07 abr 2015


Citação:
Obrigado pela deferência, Jothaz !


A Marcos o que é de Marcos! kkkkkkkkkkkkkkkk

Marilia Silva
   - 07 abr 2015

Uma tabela de clientes ou qualquer outra que contenha um campo nome. Mas pelo visto, somente com o SELECT mesmo!

Mariana Carvalho
   - 07 abr 2015

Estou esclarecida com as respostas!

Thiago Santana
   - 08 abr 2015

Não existem insert ordenado! Nem há motivos para tentar algo desse tipo, pois o ORDER BY existe justamente para isso.
Imagine o quanto iriamos consumir de um banco para efetuar a ordenação toda vez que fosse necessário efetuar um insert.

Marilia Silva
   - 08 abr 2015

Tem razão, mas pensava que internamente poderia ser mais simples, já que ele seria ordenado registro após registro, mas entendi que em um sistema grande, com varias operações no banco realmente não faz sentido.

Mariana Carvalho
   - 08 abr 2015


Citação:
Não existem insert ordenado! Nem há motivos para tentar algo desse tipo, pois o ORDER BY existe justamente para isso.
Imagine o quanto iriamos consumir de um banco para efetuar a ordenação toda vez que fosse necessário efetuar um insert.


Concordo, ficaria um trabalho extra para o banco!

Marilia Silva
   - 18 abr 2015

Esclarecida.