If you want to enter the zeros in the selection, you can do this:
SELECT A.*, REPLICATE('0', 8 - LEN(B.CODIGO)) + B.CODIGO
FROM TABELA_A A
INNER JOIN TABELA_B B ON (...)
The idea is that it does not matter if 3 or less zeros are missing. REPLICATE
this way counts the missing zeros and places them for you.
See more about the REPLICATE
function here .
The insertion would look something like this:
INSERT TABELA_B (/* Campos aqui */)
SELECT REPLICATE('0', 8 - LEN(A.CODIGO)) + A.CODIGO as CODIGO, -- Mais campos aqui
FROM TABELA_A
WHERE -- Alguma condição aqui.
I'm guessing that the type of the CODIGO
column supports leading zeros, such as varchar
or nvarchar
.
EDIT
Formatting the response for the rest of the information looks like this:
INSERT BDMCOM1_V3_ALEA (CODIGODOPRODUTO, /* Demais campos aqui */)
SELECT REPLICATE('0', 8 - LEN(A.CODIGODOPRODUTO)) + A.CODIGODOPRODUTO as CODIGODOPRODUTO, -- Mais campos aqui
FROM SaldoDeProdutos
WHERE -- Alguma condição aqui, não é obrigatório este where.