Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ACCESS Jet SQL INT()函数->;SQL Server函数_Sql_Sql Server 2005_Ms Access_Function - Fatal编程技术网

ACCESS Jet SQL INT()函数->;SQL Server函数

ACCESS Jet SQL INT()函数->;SQL Server函数,sql,sql-server-2005,ms-access,function,Sql,Sql Server 2005,Ms Access,Function,我正在将Access Jet SQL查询转换为T-SQL,并使用Int()函数。现在,我想将其转换为T-SQL,这是我目前所拥有的: --Works for Positive Select CONVERT(INT, 1.2) --Answer = 1 --Not the same as Access SELECT CONVERT(INT, -1.2) --Answer = -1 现在,根据,我需要它返回-2,而不是-1。是否有人拥有比以下更干净的T-SQL代码: DECLARE @test

我正在将Access Jet SQL查询转换为T-SQL,并使用Int()函数。现在,我想将其转换为T-SQL,这是我目前所拥有的:

--Works for Positive
Select CONVERT(INT, 1.2)
--Answer = 1

--Not the same as Access
SELECT CONVERT(INT, -1.2)
--Answer = -1
现在,根据,我需要它返回-2,而不是-1。是否有人拥有比以下更干净的T-SQL代码:

DECLARE @test FLOAT
SET @test = -1.2

SELECT CASE WHEN @test < 0 THEN CONVERT(INT, @test) - 1 ELSE CONVERT(INT, @test) END
DECLARE@test FLOAT
设置@test=-1.2
当@test<0时选择CASE,然后转换(INT,@test)-1,否则转换(INT,@test)结束
有人能想出比这更干净的代码吗(仅限T-SQL)?没有自定义项,因为这是一个临时查询。谢谢

哦,是的

select convert(int, floor(@test))
没关系…

选择地板(@test)