Originally Posted by
sula10
Bom gente,
estou querendo uma query pra bonificar os 3 primeiros colocados do rank duel e dar xx Cash, abaixo segue a tabelas e colunas.
Rank duel
member info
Desde já agradeço.
O ranking de duel você vai contar como winscore - loseScore? ou quem tiver + winScore já é o primeiro?
8 minutes:------- Atualizado -------
TENTE ESSE:
Código:
declare @name varchar(10),
@acc varchar(10),
@num int
SET @num = 1
DECLARE LISTA CURSOR LOCAL FOR
select top 3 name from rankingduel order by winscore desc
OPEN LISTA
FETCH NEXT FROM LISTA INTO @name
WHILE @@FETCH_STATUS = 0
begin
set @acc = (select top 1 accountid from character where name = @name)
IF @num = 1 -- PRIMEIRO COLOCADO
BEGIN
UPDATE MEMB_INFO SET CASH = CASH + VALOR WHERE MEMB___ID = @acc
END
IF @num = 2 -SEGUNDO COLOCADO
BEGIN
UPDATE MEMB_INFO SET CASH = CASH + VALOR WHERE MEMB___ID = @acc
END
IF @num = 3 -TERCEIRO COLOCADO
BEGIN
UPDATE MEMB_INFO SET CASH = CASH + VALOR WHERE MEMB___ID = @acc
END
set @num = @num + 1
FETCH NEXT FROM LISTA INTO @name
end
CLOSE LISTA
DEALLOCATE LISTA