SQL Server:在插入之前比较值

时间:2017-10-11 14:18:41

标签: sql sql-server azure

我正在尝试将API中的数据插入到Azure服务器的表中。我希望在插入之前过滤速率值大于或等于13.6。我的查询在某种程度上不起作用,并得到IF条件的语法错误:

DECLARE @end DATE
SET @end = (SELECT GETDATE())

INSERT INTO [dbo].[rule] (status, start, [end], type, 
                          originalAmount, availableAmount, fulfilledAmount, 
                          rate, periodMin, periodMax, created, api_key_id)
VALUES (@status, @start, @end, @type, 
        @originalAmount, @availableAmount, @fulfilledAmount, 
        @rate, @periodMin, @periodMax, @created, @api_key_id)

IF (@rate >= 13.6)  

1 个答案:

答案 0 :(得分:3)

这是你想要的吗?

Declare @end DATE;
SET @end=getdate());

IF (@rate >= 13.6)  
BEGIN
      INSERT INTO [dbo].[rule]
        (status, start, [end], type, originalAmount, availableAmount, fulfilledAmount, rate, periodMin, periodMax, created, api_key_id)
      VALUES
        (@status, @start, @end, @type, @originalAmount, @availableAmount, @fulfilledAmount, @rate, @periodMin, @periodMax, @created, @api_key_id);
END;