Операторы покрытия / приведения к целому числу - PullRequest
0 голосов
/ 02 июля 2018

Я хочу преобразовать / привести эти операторы ('/' и '*'), если это возможно. Может быть, вы знаете, как это работает, или знаете, что такое внутреннее кодирование деления и умножения ?! Может тогда я смогу продолжить с этим?

Что я хочу сделать, основываясь на последнем числе текущего системного времени, я хочу решить, является ли это число нечетным или четным, а затем выполнить умножение или деление в следующих вычислениях.

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
...