SQL Server不接受分数

时间:2019-03-12 19:16:47

标签: sql sql-server-2008

SQL Server不接受小数。我如何做到这一点?它不接受0.9

SELECT TOP (250000 * 0.9 / 100) 
    [FIRST], [MIDDLE], [LAST], [PHONE], [ADDRESS], [CITY], [STATE]
FROM 
    [7.Exporting].[dbo].[table1]

错误是

  

为TOP或FETCH子句的行计数参数提供的行数必须为整数

2 个答案:

答案 0 :(得分:2)

您可以使用表达式。只需删除小数点:

select TOP (250000*9/1000) . . .

或者,有一个明确的cast()

selectTOP (cast(250000*0.9/1000 as int)) . . . 

我对此功能感到惊讶,但似乎如此。

答案 1 :(得分:0)

top仅适用于整数

SELECT TOP (any int value) [FIRST],[MIDDLE],[LAST],[PHONE],[ADDRESS],[CITY],[STATE]
      FROM [7.Exporting].[dbo].[table1]