Условие на переменную

Сейчас имею такую команду:

UPDATE Users 
SET Coins = Coins + @num,
Сoins_Bought = Сoins_Bought + @num
WHERE Discord_Id = @id;
                                            
UPDATE Users 
SET Coins = Coins + @numForReferrer
WHERE Discord_Id = 
    (SELECT Referrer from Users WHERE Discord_Id = @id);

Будет сложно объяснить на словах, что мне нужно, поэтому покажу грубо:

UPDATE Users 
SET Coins = Coins + @num,
Сoins_Bought = Сoins_Bought + @num
WHERE Discord_Id = @id;

(SELECT Referrer from Users WHERE Discord_Id = @id) AS Referrer_Id
IF Referrer_Id != NULL    
UPDATE Users 
SET Coins = Coins + @numForReferrer
WHERE Discord_Id = Referrer_Id;

Надеюсь, смысл понятен. Как правильно записать подобную команду?


Ответы (1 шт):

Автор решения: Sergey Moiseenko

Если правильно понял:

UPDATE Users 
SET Coins = Coins + @numForReferrer
WHERE Discord_Id = 
    (SELECT coalesce(Referrer,-1) from Users WHERE Discord_Id = @id);
→ Ссылка