ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Formatar no select

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
karlosrapanui
Experiente
Experiente


Registrado: Terça-Feira, 29 de Agosto de 2006
Mensagens: 475

MensagemEnviada: Qui Fev 17, 2011 9:38 am    Assunto: Formatar no select Responder com Citação

To usando assim

select
FORMAT(cad.nfuncional,'00000'),
case cad.sexo
when 'M' then '1'
when 'F' then '2'
else '0'
end as sexo
from geral_folha_cadastro cad
where cad.mes_referente = 'DEZ-2010'

mas esta dando erro no FORMAT.....o erro é
An error was found in the application program input parameters for the SQL statement.
Dynamic SQL Error.
SQL error code = -804.
Function unknown.
FORMAT.


Por acaso, nao existe como fazer isso direto no IBExpert utilizando Firebird 2.1 ??

Carlos
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
adriano_servitec
Colaborador
Colaborador


Registrado: Sexta-Feira, 30 de Janeiro de 2004
Mensagens: 16262
Localização: Curitiba-PR

MensagemEnviada: Qui Fev 17, 2011 9:44 am    Assunto: Re: Formatar no select Responder com Citação

karlosrapanui escreveu:
To usando assim

select
FORMAT(cad.nfuncional,'00000'),
case cad.sexo
when 'M' then '1'
when 'F' then '2'
else '0'
end as sexo
from geral_folha_cadastro cad
where cad.mes_referente = 'DEZ-2010'

mas esta dando erro no FORMAT.....o erro é
An error was found in the application program input parameters for the SQL statement.
Dynamic SQL Error.
SQL error code = -804.
Function unknown.
FORMAT.


Por acaso, nao existe como fazer isso direto no IBExpert utilizando Firebird 2.1 ??

Carlos
é pq esta função não pertence ao firebird...

O que vc quer fazer? Converter um inteiro para string?


use o CAST, se for o caso...
_________________
Meus aplicativos para Android Free.
https://play.google.com/store/apps/details?id=com.debieferandes.games.thebiblegame
https://play.google.com/store/apps/details?id=br.com.couldsys.masterdrum
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
rafmattos
Colaborador
Colaborador


Registrado: Quinta-Feira, 11 de Fevereiro de 2010
Mensagens: 3408
Localização: Campo Grande/MS

MensagemEnviada: Qui Fev 17, 2011 9:44 am    Assunto: Responder com Citação

não existe format no firebird
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail Visitar a homepage do Usuário MSN Messenger
karlosrapanui
Experiente
Experiente


Registrado: Terça-Feira, 29 de Agosto de 2006
Mensagens: 475

MensagemEnviada: Qui Fev 17, 2011 9:51 am    Assunto: Responder com Citação

No caso o nfuncional é numerico.......eu quero que ele seja exibido como string tamanho 9....ex

nfuncional = 1000

exibir assim

000001000
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
rafmattos
Colaborador
Colaborador


Registrado: Quinta-Feira, 11 de Fevereiro de 2010
Mensagens: 3408
Localização: Campo Grande/MS

MensagemEnviada: Qui Fev 17, 2011 9:55 am    Assunto: Responder com Citação

karlosrapanui escreveu:
No caso o nfuncional é numerico.......eu quero que ele seja exibido como string tamanho 9....ex

nfuncional = 1000

exibir assim

000001000



olha acho q isso vc vai ter q tratar no delphi, ou vc pode fazer uma UDF, mas eu indicaria a tratar no delphi
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail Visitar a homepage do Usuário MSN Messenger
rafmattos
Colaborador
Colaborador


Registrado: Quinta-Feira, 11 de Fevereiro de 2010
Mensagens: 3408
Localização: Campo Grande/MS

MensagemEnviada: Qui Fev 17, 2011 9:56 am    Assunto: Responder com Citação

ou fazer uma procedure


http://firebase.com.br/pipermail/lista_firebase.com.br/2005-August/018297.html
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail Visitar a homepage do Usuário MSN Messenger
JoaoSHi
Experiente
Experiente


Registrado: Segunda-Feira, 25 de Agosto de 2008
Mensagens: 437

MensagemEnviada: Qui Fev 17, 2011 10:20 am    Assunto: Responder com Citação

Ou tentar desta forma:

SELECT RIGHT('00000000000'||cad.nfuncional,10),

Espero ter ajudado.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
adriano_servitec
Colaborador
Colaborador


Registrado: Sexta-Feira, 30 de Janeiro de 2004
Mensagens: 16262
Localização: Curitiba-PR

MensagemEnviada: Qui Fev 17, 2011 10:33 am    Assunto: Responder com Citação

JoaoSHi escreveu:
Ou tentar desta forma:

SELECT RIGHT('00000000000'||cad.nfuncional,10),

Espero ter ajudado.
Só se o rigth for para versões mais novas do firebird, pq testei na versão 2.0 e não reconhece o rigth.

Ja no msSQL da certo
Código:

Select Codigo, RIGHT('0000'+ CONVERT(VARCHAR,Codigo),5) 'CodigoAlfa', Nome
  From Teste
  Order By RIGHT('0000'+ CONVERT(VARCHAR,Codigo),5)
Mais nada a ver com o que o colega pediu, ja que são bancos diferentes.
_________________
Meus aplicativos para Android Free.
https://play.google.com/store/apps/details?id=com.debieferandes.games.thebiblegame
https://play.google.com/store/apps/details?id=br.com.couldsys.masterdrum
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
JoaoSHi
Experiente
Experiente


Registrado: Segunda-Feira, 25 de Agosto de 2008
Mensagens: 437

MensagemEnviada: Qui Fev 17, 2011 1:52 pm    Assunto: Responder com Citação

Acho que o RIGHT esta a partir do Firebird 2.1
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
rafmattos
Colaborador
Colaborador


Registrado: Quinta-Feira, 11 de Fevereiro de 2010
Mensagens: 3408
Localização: Campo Grande/MS

MensagemEnviada: Qui Fev 17, 2011 1:54 pm    Assunto: Responder com Citação

JoaoSHi escreveu:
Acho que o RIGHT esta a partir do Firebird 2.1


realmente

http://www.firebirdsql.org/refdocs/langrefupd21-intfunc-right.html
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail Visitar a homepage do Usuário MSN Messenger
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB