我正在将大数据加载到数据库中,
我想知道这个过程是怎么回事。
我用
select count(*) from table
检查加载了多少行。 现在我想得到一个过程的百分比。 我试过了:
select ( count(*)/20000 ) from table
和
select cast( ( count(*)/20000 ) as DECIMAL(6,4) ) from table
但他们都返回0,
所以我该怎么做?
如果可以显示百分比,那就更好了。
感谢
答案 0 :(得分:3)
整数除法返回一个整数,小数部分被截断。你可以除以20000.0
:
select ( count(*)/20000.0 ) from table
如果整数被除数除以整数除数,则结果为 截断结果的任何小数部分的整数。
答案 1 :(得分:1)
Select CONVERT(DECIMAL(6,4),COUNT(*)) / CONVERT(DECIMAL(6,4),20000) FROM TABLE
- 明确匹配类型很重要,因为并非所有数字都是整数而不是所有小数都相同。 DECIMAL(6,4)实际上是它自己的数据类型,与DECIMAL(6,3)不同。