none
Select com zero a esquerda

    Pergunta

  • Olá, possuo 2 tabelas em uma existe a identificação da Unidade e na outra coluna o referenciador

    tabela1

    Um       | REF     | Quantidade

    adm.1    0239e      5,4

    tabela2

    REF      | Preco

    0239e  124,32

     

    Ao realizar o select multiplicando a coluna Quantidade * Preco a consulta não retorna nada.

    Select  (t1.Quantidade*t2.Preco) as Custo Final from tabela1 t1, tabela2 t2
    where t1.REF = t2.REF

    Ele não retorna

    Custo Final
    671,328

    O que posso fazer alem de remover o 0 da esquerda para conseguir o resultado esperado.

    segunda-feira, 19 de julho de 2010 19:00

Respostas

  • BOA TARDE  ALLEN CASTRO

    VC PODE UTILIZAR A SEGUINTE FORMA

    PODE CONVERTER ANTES DE SOMAR

    NO CASO VC SO QUER INTEIRO

    E ISSO :

    SELECT

     

    CONVERT(INT,'00012') AS INTEIRO , '00012' AS COM_ZERO_A_ESQUERDA

    RESULTADO :

    INTEIRO                      COM_ZERO_A_ESQUERDA
    12                                    00012

    • Marcado como Resposta Allen Castro quarta-feira, 21 de julho de 2010 13:37
    segunda-feira, 19 de julho de 2010 19:14
  • Resolvi removendo os 0 a esquerda, ainda bem que eram poucos ;)

    segunda-feira, 19 de julho de 2010 19:48

Todas as Respostas

  • Allen qual o datatype da coluna? é um vachar?

    acredito que o valor que deveria esta na coluna era 5.4 e não 5,4 assim tbm no preço

     

    att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba
    segunda-feira, 19 de julho de 2010 19:13
    Moderador
  • BOA TARDE  ALLEN CASTRO

    VC PODE UTILIZAR A SEGUINTE FORMA

    PODE CONVERTER ANTES DE SOMAR

    NO CASO VC SO QUER INTEIRO

    E ISSO :

    SELECT

     

    CONVERT(INT,'00012') AS INTEIRO , '00012' AS COM_ZERO_A_ESQUERDA

    RESULTADO :

    INTEIRO                      COM_ZERO_A_ESQUERDA
    12                                    00012

    • Marcado como Resposta Allen Castro quarta-feira, 21 de julho de 2010 13:37
    segunda-feira, 19 de julho de 2010 19:14
  • QUAL SERIA A FORMA QUE VC GOSTARIA QUE TE RETORNASSE

    SERIA CUSTO  671,32

    TENTE ASSIM POR FAVOR

    Select  CONVERT(NUMERIC(10,2),SUM(t1.Quantidade*t2.Preco)) as Custo Final from tabela1 t1, tabela2 t2
    where t1.REF = t2.REF

    segunda-feira, 19 de julho de 2010 19:17
  • Allen qual o datatype da coluna? é um vachar?

    acredito que o valor que deveria esta na coluna era 5.4 e não 5,4 assim tbm no preço

     

    att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba


    Correto, é ponto mesmo,

    as colunas com os preços e quantidades estão em decimal.

    varchar a coluna do REF

    segunda-feira, 19 de julho de 2010 19:44
  • BOA TARDE  ALLEN CASTRO

    VC PODE UTILIZAR A SEGUINTE FORMA

    PODE CONVERTER ANTES DE SOMAR

    NO CASO VC SO QUER INTEIRO

    E ISSO :

    SELECT

     

    CONVERT(INT,'00012') AS INTEIRO , '00012' AS COM_ZERO_A_ESQUERDA

    RESULTADO :

    INTEIRO                      COM_ZERO_A_ESQUERDA
    12                                    00012


    Tipo, isso foi um exemplo pois encontrei algumas REF com 0 a esquerda, trata-se de mais de 40 mil registros, dos quais apenas 9 possuem esse 0 na frente ;x

    Essa conversão não afetaria no desempenho?

    Obrigado pelas respostas

    segunda-feira, 19 de julho de 2010 19:45
  • Resolvi removendo os 0 a esquerda, ainda bem que eram poucos ;)

    segunda-feira, 19 de julho de 2010 19:48
  • NAO IRA AFETAR NO DESMPENHO .

    TUDO BEM  CONSEGIU O RESULTADO ESPERADO?

    segunda-feira, 19 de julho de 2010 20:15
  • Sim, obrigado pela ajuda de todos ;D

    quarta-feira, 21 de julho de 2010 13:21