我将数据插入数据库,它们有一个小数和一个负数,有没有办法将DataType Decimal转换为负数,还是有另一种数据类型我可以使用?
答案 0 :(得分:16)
decimal
数据类型也可以存储负数。所以要回答你的问题,是的,你可以使用decimal
数据类型来存储负十进制数。
以下是一些证明:
create table NegativeDecimal
(
somedec decimal(10, 4) not null
)
go
insert into negativedecimal
select -12.3
union all
select 16.4
go
select *
from NegativeDecimal
somedec
---------------------------------------
-12.3000
16.4000
(2 row(s) affected)
编辑:如果您使用的是SQL Server,则提供此功能。请指定您的RDBMS。
答案 1 :(得分:3)
您没有说明您正在使用哪个DBMS,但至少在MySQL上,小数点支持否定:
mysql> create table x (x decimal(5,2));
Query OK, 0 rows affected (0.06 sec)
mysql> insert into x (x) values (-3.14);
Query OK, 1 row affected (0.00 sec)
mysql> select * from x;
+-------+
| x |
+-------+
| -3.14 |
+-------+
1 row in set (0.00 sec)
答案 2 :(得分:0)
对于数学定义,十进制数可以是正数或负数,数据结构知道,出于同样的原因,不是负数或正数的特殊类型