SQL DataType Отрицательный десятичный - PullRequest
15 голосов
/ 08 ноября 2011

Я вставляю Данные в базу данных, они имеют десятичное и отрицательное число, есть ли способ использовать десятичный тип данных в отрицательные числа или есть другой тип данных, который я могу использовать?

Ответы [ 3 ]

16 голосов
/ 08 ноября 2011

Тип данных 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. Пожалуйста, укажите вашу РСУБД.

3 голосов
/ 08 ноября 2011

Вы не указываете, какую СУБД вы используете, но по крайней мере в 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)
0 голосов
/ 08 ноября 2011

Для математического определения десятичное число может быть положительным или отрицательным, и структуры данных знают, что по той же причине не является специальным типом для отрицательных или положительных чисел

...