[firebase-br] RES: Campo NULL Primeiro
Eduardo Bahiense
eduardo em icontroller.com.br
Seg Out 27 01:17:59 -03 2008
Oi Zé
É como eu falei, desculpe a brincadeira.
É que em um ambiente cooperativo como esta lista, espera-se que as
pessoas troquem experiências e informações, e a sua frase "Eu já
resolvi, mas queria saber qual o modo mais eficiente para isso.", não
está bem de acordo com essa filosofia, parecendo que você não queria nos
dizer sua "gambiarra", embora eu tenha certeza que sua intenção não
tenha sido de não trocar experiências aqui. Foi só uma brincadeira
mesmo, me desculpe novamente, mas não faça isso de novo (rs).
Bem, quanto à sua questão, você deve se certificar que as datas estão
NULL mesmo ou ZERO, que dá uma data do tipo '30-12-1899' (ou algo
parecido).
Se estiverem NULL, "NULLS FIRST" deveria funcionar e seria o melhor
caminho. Se não funcionar -> reporte o bug.
Para se certificar, faça um SELECT * FROM TABELA WHERE CAMPO_DATA IS
NULL e WHERE CAMPO_DATA < '01.01.1900' e veja o que vem.
Agora, se você usar COALESCE com NULLS FIRST, também fica um pouco
incoerente. O CAST também não entendi, o campo não é DATE?
Talvez se você nos disser mais sobre a estrutura da tabela e como está a
query, possamos te ajudar mais.
Agora, falar mal do SBT é sacanagem, assisto todos os dias o Jornal do
SBT e a novela Pantanal e acho muito legal, mas também não vamos brigar
por causa disso.
Abração
Eduardo
Tiago de Assis Pimenta escreveu:
> Nossa cara, nada a ver isso que vc falou, e muito menos o que o Henrique
> falou, eu somente falei que tinha resolvido, para falar que não era tão
> urgente assim, que eu já tinha achado uma maneira para fazer, mas tinha
> certeza que não era a melhor das opções, por isso vim aqui perguntar como
> vc's fariam, para ver qual a melhor maneira.
>
> Como falaram, vou tentar o nulls first , pois tentei com null first e não
> deu certo.
>
> Coloquei primeiro coalesce, mas como falei, ele formatou as datas que tinham
> preenchimento como 2008-10-27.
>
> Daí o que eu tive que fazer, usar o cast para definir o campo como data, e
> depois o coalesce. Daí sim veio do jeito que eu queria. Mas eu sei que foi
> gambiarra. Uma função dentro da outra Cast(Coalesce()). E tudo isso no
> select. Não tentei fazer o coalesce no order by (Vou tentar também isso
> depois).
>
> Bom era isso, agora se pareceu que eu estava sendo sencionalista, me
> desculpe, mas nada a ver, vc's tem que parar de assistir SBT viu :)
>
> Abraços.
>
> -----Mensagem original-----
> De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
> nome de Eduardo Bahiense
> Enviada em: domingo, 26 de outubro de 2008 21:44
> Para: lista em firebase.com.br
> Assunto: Re: [firebase-br] Campo NULL Primeiro
>
>> OBS.: Eu já resolvi, mas queria saber qual o modo mais eficiente para
> isso.
>
> Essa é muito boa em um ambiente cooperativo !
>
> Eu gostaria muito de saber sobre isso, mas sem me expor!
>
> Então, se você me contar como você fez eu conto como eu faria.
>
> Desculpe a brincadeira,
>
>
> Eduardo
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
Mais detalhes sobre a lista de discussão lista