【问题标题】:ACCESS Jet SQL INT() Function -> SQL Server FunctionACCESS Jet SQL INT() 函数 -> SQL Server 函数
【发布时间】:2010-11-21 17:17:36
【问题描述】:

我正在将 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

现在,根据this,我需要它返回-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

谁能想出比这更简洁的代码(仅限 T-SQL)?没有 UDF,因为这是一个临时查询。谢谢!

【问题讨论】:

    标签: sql sql-server-2005 ms-access function


    【解决方案1】:

    选择楼层(@test)

    【讨论】:

      【解决方案2】:

      哦,是的……

      select convert(int, floor(@test))
      

      没关系……

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-12-25
        • 1970-01-01
        • 2021-04-17
        • 2021-10-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多