Ir para conteúdo
Fórum Script Brasil
  • 0

Utilizar opção Rigth e Replicate


hrm

Pergunta

Pessoal, neste meu select, ele me retorna um número assim: 3612. Só que quero que todas as vezes que faça o select, ele deixe o numero com 7 casas decimais. Ex: Se vinher 3612, ele transforma para 0003612. Se vinher 33612 ele transforma para 0033612. E assim por diante. Sei que tem a função Replicate, mas não consegui encaixa esse meu select na sintaxe dessas funções. Algeum me ajuda??

select top 1 cast (pk_tabela as INT) + 1

from [bD_TESTE].[dbo].[tabela]

order by pk_tabela desc

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Bom dia hrm,

O Replicate é para você substituir caracteres. Creio que não conseguirá fazer com a funcionalidade. O tipo também terá que ser alterado para caracter, pois se alterar para numérico o zero a esquerda será suprimido.

Segue um exemplo de como pode resolver:

DECLARE @Numero AS INT

SET @Numero = 3612 

SELECT case len(CAST(@Numero AS varchar(7)))
WHEN 1 THEN '000000' + CAST(@Numero AS varchar(7))
WHEN 2 THEN '00000' + CAST(@Numero AS varchar(7))
WHEN 3 THEN '0000' + CAST(@Numero AS varchar(7))
WHEN 4 THEN '000' + CAST(@Numero AS varchar(7))
WHEN 5 THEN '00' + CAST(@Numero AS varchar(7))
WHEN 6 THEN '0' + CAST(@Numero AS varchar(7))
WHEN 7 THEN CAST(@Numero AS varchar(7)) END

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...