如何转换 SQL Server Convert(float,substring([table].[field],x,y)



我已经将所有SQL Server命令转换为ACCESS,除了一个。 这是SQL Server语法中的代码,我无法弄清楚要使用哪些命令。 Code 采用存储为三个或四个字符的字符串的小时值,例如 25:00、2:30、09:20 等,并将它们转换为等效的数字,例如 25、2.5、9.33333 等。 有人可以为我提供正确的命令来代替转换、浮点和子字符串吗? 这是我的代码:

(
  (
    iif(LEN(dbo_t_MakerProcesses.ProcessTarget) = 5 
        AND 
        SUBSTRING(dbo_t_MakerProcesses.ProcessTarget,3,1) = ':',
          convert(float, substring(dbo_t_MakerProcesses.ProcessTarget, 1, 2) 
            + '.' 
            +substring(dbo_t_MakerProcesses.ProcessTarget, 4, 2)),0
       )
       -Round(iif(LEN(dbo_t_MakerProcesses.ProcessTarget) = 5 
                  AND  SUBSTRING(dbo_t_MakerProcesses.ProcessTarget,3,1) = ':',
                  convert(float,substring(dbo_t_MakerProcesses.ProcessTarget, 1, 2)
                                + '.'+substring(dbo_t_MakerProcesses.ProcessTarget,4,2)),
                 0),0,1
             )
  )/.6
)+
Round(
      iif(
          LEN(dbo_t_MakerProcesses.ProcessTarget) = 5 
          AND 
          SUBSTRING(dbo_t_MakerProcesses.ProcessTarget,3,1) = ':',
           convert(float,substring(dbo_t_MakerProcesses.ProcessTarget, 1, 2) 
                         + '.'
                         +substring(dbo_t_MakerProcesses.ProcessTarget, 4, 2)
                  ),0
          ),0,1
      ) AS Target

转换如下(您可能需要查找更多):

 Cdbl()
 CInt()
 CStr()
 CLng()

浮:

 Double

和子字符串:

 MID( text, start_position, [number_of_characters] )

相关内容

  • 没有找到相关文章

最新更新