有三列成本,参与者,single_cost,并且希望编写SQL以将参与者的成本划分为single_cost的值。 当小数部分出现时,我努力保留它,并且我可以进入,但是我会说,并且知道一种方法会在这个时候教导一个值? 每列都是int类型。提前感谢你。sql中的数字格式化函数
前 在成本的时间= 15000,参与者= 7,我成为single_cost = 2,142.8,但与2143
有三列成本,参与者,single_cost,并且希望编写SQL以将参与者的成本划分为single_cost的值。 当小数部分出现时,我努力保留它,并且我可以进入,但是我会说,并且知道一种方法会在这个时候教导一个值? 每列都是int类型。提前感谢你。sql中的数字格式化函数
前 在成本的时间= 15000,参与者= 7,我成为single_cost = 2,142.8,但与2143
一个数据库中注册自己,如果我理解正确的话你要保持浮点值在你的数据库中。要发生这种情况,您需要将您的除法结果以下列方式浮动:CAST(X/Y AS FLOAT)
,其中X和Y以及您的字段名称。
请注意single_cost的数据类型也必须是FLOAT。
根据您拥有的数据库,另一种实现方法是将分子或分母乘以“1.0”。
例如:
UPDATE Table
SET single_cost = (1.0 * cost)/participant
以前的解决办法是:
UPDATE Table
SET single_cost = CAST(cost AS FLOAT)/participant
希望有所帮助。
你可以做这样的事情(假定T-SQL)
select single_cost = round(cast(cost as float)/cast(participant as float),0)
你可能要考虑改写这一问题。 – akf 2009-06-30 03:11:18