我有一个场景,我希望在SqlServer中的同一字段中存储美元金额或百分比。
我有一个Type字段,它取一个值,例如'dollar'或'percent',然后是一个值字段,它取两种值:25.00或0.05。
如果这是一个可怕的想法,我想知道,因为那时我会把田地分开。
我应该对这种类型的字段使用decimal或float吗?为什么?
答案 0 :(得分:1)
如果这是一个可怕的想法,我想知道,因为那时我会把田地分开。
All depends on your design but not a terribe thing. Even if you split the columns at any point of time one column would be filled but the other column should be 0 or Null.
我应该对这种类型的字段使用decimal或float吗?为什么?
Use can use Decimal refer the example below.
Declare @table table (
Type VARCHAR(50)
,Value DECIMAL(18, 2)
)
Insert into @table
values ('$',25.00),
('%',0.05),
('$',25.00)
您可以使用
进行求和或平均SELECT sum(value) AS Sum
,avg(value) AS Avg
FROM @table
WHERE type = '$'