gpt4 book ai didi

sql - 为什么我的小数值在 SQL 插入中会四舍五入为整数?

转载 作者:行者123 更新时间:2023-12-02 07:26:24 25 4
gpt4 key购买 nike

我正在使用 SQL Server Management Studio 并具有以下架构:

CREATE TABLE tmp(
id int NOT NULL IDENTITY(1,1)PRIMARY KEY,
toleranceRegion DECIMAL
)

然后我执行以下插入:

INSERT INTO tmp VALUES(3.2); 
INSERT INTO tmp VALUES(5.678);
INSERT INTO tmp VALUES(1.95);

预期输出:

id  toleranceRegion
-- ---------------
1 3.2
2 5.678
3 1.95

实际输出:

id  toleranceRegion
-- ---------------
1 3
2 6
3 2

为什么插入的toleranceRegion值会四舍五入到最接近的整数?

最佳答案

您没有为小数定义小数位数/精度。如果您想要小数点后 3 位数字,则应将其定义为 DECIMAL(9,3),这将为您提供小数点前 6 位和最多 3 位小数。 您需要分析预期数据,并根据您的预期为列定义指定正确的精度和小数位数。

CREATE TABLE tmp(
id int NOT NULL IDENTITY(1,1)PRIMARY KEY,
toleranceRegion DECIMAL(9,3)
)

请参阅 decimal here 的 Sql Server 文档.

关于sql - 为什么我的小数值在 SQL 插入中会四舍五入为整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38062683/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com