将Excel Max(Ceiling)函数转换为Sql Query

时间:2015-04-15 08:49:52

标签: mysql sql excel excel-formula

我必须在SQL中获得与Excel相同的结果。 Excel中的功能是:

=MAX(CEILING(((D2*B2))+1;10)-1;0)+0.99

我在SQL中尝试了以下内容并且查询有效,但结果不同:

IF ([CSV_COL(6)] > 1000,Round((ceiling([CSV_COL(6)] * 1.0354+6)+0.99)/1.14,2), Round((ceiling([CSV_COL(6)] * 1.070+6)+0.99)/1.14,2))

请注意:

CSV_COL (6) is Excel D2

1.0354 is Excel B2

1.14只是为了获得增值税Excel。

2是得到2位小数。

示例结果:

R1078.00 needs to floor or ceiling to R1079.99
or
R1063.24 needs to floor or ceiling to R1069.99

我基本上需要将上面的Excel查询转换为SQL格式,作为上面的当前SQL查询。

1 个答案:

答案 0 :(得分:0)

因为SQL上限函数只是向上舍入到下一个整数,所以你必须使用除以10的解决方法,然后向上舍入,然后乘以10,例如当你的D2是1140时: -

select ceiling(1140 * 1.0354/10)*10-.01

结果

(No column name)
1189.99