首页 > 解决方案 > 将运算符转换为整数

问题描述

如果可能的话,我想转换/转换这些运算符('/' 和 '*')。也许您知道它是如何工作的,或者您知道除法和乘法的内部编码是什么?!也许我可以继续这样做?

我要做的是,根据当前系统时间的最后一个数字,我想确定该数字是奇数还是偶数,然后在接下来的计算中进行乘法或除法。

CREATE FUNCTION CalculateFactor()
RETURNS NVARCHAR(50)
AS
BEGIN

DECLARE @time DATETIME2(7) 
DECLARE @length INT
DECLARE @value NVARCHAR(20) 
DECLARE @operator NVARCHAR(20) 

SET @time = SYSDATETIME()
SELECT @length = LEN(@time)


SELECT @value = RIGHT(@time, 1);

IF (@value % 2 = 0) 
    SET @operator = '*'
ELSE SET @operator = '/'

DECLARE @SQL NVARCHAR(20) 
SET @SQL = '10' + @operator + '2'  --I get only 10 / 2 and 10 * 2 because that are strings and that is why I cannot get a result of the operation, but I want 5 and 20  

RETURN @SQL
END
GO

标签: tsqlcastingtype-conversionoperators

解决方案


推荐阅读