1
resposta

Dúvida sobre os tipos de campos

CREATE TABLE [VENDEDORES]
(
[MATRICULA] [CHAR] (5),
[NOME] [VARCHAR] (100),
[COMISSÃO] [FLOAT] (3),
)
INSERT INTO [VENDEDORES]
([MATRICULA],[NOME],[COMISSÃO])
VALUES
('00235','Márcio Almeida Silva','8%')

gostaria de saber se o float esta certo para valores em porcentagem ou seria melhor usar outro campo

1 resposta

Olá Lucas, tudo bem?

Desde já peço desculpas pela demora em obter retorno.

O tipo de dado FLOATé utilizado para representar números decimais de ponto flutuante. Embora seja possível armazenar valores percentuais em um campo FLOAT, não é recomendado. Isso porque o tipo FLOAT não é preciso o suficiente para representar valores percentuais com exatidão.

Para armazenar valores percentuais, é recomendado utilizar o tipo de dado DECIMAL ou NUMERIC. Ambos são precisos e podem ser configurados para armazenar valores percentuais com a quantidade de casas decimais desejada.

No seu caso, apenas sugiro alterar o tipo de dado do campo [COMISSÃO] para DECIMAL , e configurá-lo para armazenar valores percentuais com a precisão desejada. Por exemplo:

CREATE TABLE [VENDEDORES]
(
[MATRICULA] [CHAR] (5),
[NOME] [VARCHAR] (100),
[COMISSÃO] [DECIMAL](5,2)
)

INSERT INTO [VENDEDORES]
([MATRICULA],[NOME],[COMISSÃO])
VALUES
('00235','Márcio Almeida Silva',0.08)

Nesse exemplo, o campo [COMISSÃO] foi configurado para armazenar valores percentuais com duas casas decimais. O valor 0.08 representa 8%.

Reforço que essa é apenas uma sugestão de melhoria para fins de exatidão.

Espero ter ajudado.

Caso surja alguma dúvida, fico à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!