Estou precisando de um help, meu cliente possuía um banco MySQL e em uma certa tabela existiam registros de cidades, em algumas cidades haviam por exemplo (RS) Porto Alegre e outras simplesmente Porto Alegre acontece que no order by name do MySQLele interpreta o “( )” e alinha todas as cidades primeiro as com parenteses e depois as sem, porém migramos para Oracle recentemente e agora o oracle não interpreta os parenteses no order by ficando ordenado de maneira diferente do que o cliente estava acostumado.
Minha pergunta, existe alguma configuração que eu possa realizar para o Oracle interpretar os parenteses como caracteres no Order By?
Será que na transferência de um banco para o outro não houve trunca nesses registro, será que Oracle não fez algum converte, porque o Ordernação funcional igual para todos os bancos?
Dê uma observação como está configurado a coleção de carecteres do seu banco (collation) e verifique se é da mesma que a atual do Oracle?
J
Jefferson_Kist11 like
Podes me auxiliar neste procedimento? Não costumo mexer muito em banco…
E
Solucao aceita
esmiralha2 likes
Jefferson, você pode tentar isso:
order by case when name like '(%' then '001' else name end
Isso vai fazer com que os nomes que começam com parênteses sejam priorizados na ordenação.
J
Jefferson_Kist11 like
boa idéia, obrigado.
E
esmiralha
Marca como resolvida a pergunta.
J
Jefferson_Kist1
Assim que eu encontrar onde fica isso
P
prirodovalho
Jefferson tem que editar o título do tópico e coloca RESOLVIDO na frente
D
Dragoon
Curiosidade: aonde tá escrito isso?
P
prirodovalho1 like
D
Dragoon
Aonde tem 3 pontinhos clique e vai abrir mais opções, tem um Checkbox selecione para finalizar seu questionamento creditando aquela resposta sendo essa a solução do seu problema!