PDA

View Full Version : |Pedido| Premiar Top 3 Devil Square



Legacy
28/01/2020, 09:31 AM
Vim desafiar vcs q manjam de query.

Preciso de uma query que selecione o top 3 no RankingDevilSquare
2278

e dê:
xx WCoinC ao top 1
xy WCoinC ao top 2, na tabela CashShopData
2279

e dê 1 ponto ao top 3 na table medal evento da coluna medalhas
2280

OBS: tenho tentado a query abaixo, porém ela da erro.

[Only registered and activated users can see links]
[Only registered and activated users can see links]


[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]


[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]

[Only registered and activated users can see links]
[Only registered and activated users can see links]

[Only registered and activated users can see links]

UPDATE RankingDevilSquare SET Score_semanal = 0


ATT:

lockzao
28/01/2020, 10:31 AM
Olá, tenta usar esse amigo.


[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]


[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]


UPDATE dbo.[CashShopData] SET WCoinC=WCoinC+50 FROM dbo.[CashShopData]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.CashShopData.[AccountID]
[Only registered and activated users can see links]


UPDATE dbo.[CashShopData] SET WCoinC=WCoinC+30 FROM dbo.[CashShopData]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.CashShopData.[AccountID]
[Only registered and activated users can see links]


UPDATE dbo.[CashShopData] SET WCoinC=WCoinC+10 FROM dbo.[CashShopData]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.CashShopData.[AccountID]
[Only registered and activated users can see links]


UPDATE dbo.[MK_MEDALHAS] SET medal_evento=medal_evento+1 FROM dbo.[CashShopData]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.CashShopData.[AccountID]
[Only registered and activated users can see links]


UPDATE dbo.[MK_MEDALHAS] SET medal_evento=medal_evento+1 FROM dbo.[CashShopData]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.CashShopData.[AccountID]
[Only registered and activated users can see links]


UPDATE dbo.[MK_MEDALHAS] SET medal_evento=medal_evento+1 FROM dbo.[CashShopData]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.CashShopData.[AccountID]
[Only registered and activated users can see links]


UPDATE dbo.RankingDevilSquare SET Score_Semanal = '0'


Ai fica teu critério qual valor WCoinC premiar.

Legacy
28/01/2020, 11:52 AM
Olá, (...) UPDATE dbo.[MK_MEDALHAS] SET medal_evento=medal_evento+1 FROM dbo.[CashShopData]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.CashShopData.[AccountID]
[Only registered and activated users can see links]



Mano lockzao, ta quase pronto do "medal_evento" é da 1 somente ao 1º colocado, os outros premiação normal.
Obs: falta só esse trcho do evento medal, o restante ta perfeito.

lockzao
28/01/2020, 01:44 PM
Experimenta alterar essa linha


UPDATE dbo.[MK_MEDALHAS] SET medal_evento=medal_evento+1 FROM dbo.[MK_MEDALHAS]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.MK_MEDALHAS.[Name]
[Only registered and activated users can see links]


UPDATE dbo.[MK_MEDALHAS] SET medal_evento=medal_evento+1 FROM dbo.[MK_MEDALHAS]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.MK_MEDALHAS.[Name]
[Only registered and activated users can see links]


UPDATE dbo.[MK_MEDALHAS] SET medal_evento=medal_evento+1 FROM dbo.[MK_MEDALHAS]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.MK_MEDALHAS.[Name]
[Only registered and activated users can see links]


Estou meio enferrujado, faz tempo que não brinco com script sqlserver, rsrs

Legacy
28/01/2020, 06:11 PM
Experimenta alterar essa linha


UPDATE dbo.[MK_MEDALHAS] SET medal_evento=medal_evento+1 FROM dbo.[MK_MEDALHAS]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.MK_MEDALHAS.[Name]
[Only registered and activated users can see links]



essa linha da "+1" pra todos, o q to pretendendo é da "1" apenas ao 1º colocado.

testei outras possibilidades mas sem sucesso.

lockzao
29/01/2020, 08:54 AM
essa linha da "+1" pra todos
Acho impossível pois tem where no final do código.


o q to pretendendo é da "1" apenas ao 1º colocado.
testei outras possibilidades mas sem sucesso

Se verificar no seu post inicial você pediu para dar WCoinC e medal_evento ao top3, se não quer premiar o top2 e o top3 é só remover os updates que não quer que o sqlserver execute.

Seu código ficaria assim

[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]


[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]


UPDATE dbo.[CashShopData] SET WCoinC=WCoinC+50 FROM dbo.[CashShopData]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.CashShopData.[AccountID]
[Only registered and activated users can see links]


UPDATE dbo.[CashShopData] SET WCoinC=WCoinC+30 FROM dbo.[CashShopData]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.CashShopData.[AccountID]
[Only registered and activated users can see links]


UPDATE dbo.[CashShopData] SET WCoinC=WCoinC+10 FROM dbo.[CashShopData]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.CashShopData.[AccountID]
[Only registered and activated users can see links]


UPDATE dbo.[MK_MEDALHAS] SET medal_evento=medal_evento+1 FROM dbo.[MK_MEDALHAS]
JOIN dbo.Character ON dbo.Character.AccountID = dbo.MK_MEDALHAS.[Name]
[Only registered and activated users can see links]


UPDATE dbo.RankingDevilSquare SET Score_Semanal = '0'




Premia top1, top2 e top3 com WCoinC
Premia top1 com medal_evento

Legacy
29/01/2020, 11:56 AM
Seu código ficaria assim .....

2282
desculpa pelo abuso,
lockzao ([Only registered and activated users can see links]).


Premia top1, top2 e top3 com WCoinC
Premia top1 com medal_evento

A unica parte q ta pegando é a referente a medalhas, o resto ta de boa.

23 Horas 9 minutes:------- Atualizado -------


(...)

Passando para lhe agradecer pela ajuda, xd

Informando q a linha funcional ficou assim:

UPDATE dbo.[MK_MEDALHAS] SET medal_ds_s = '1' FROM dbo.[MK_MEDALHAS]JOIN dbo.Character ON dbo.Character.AccountID = dbo.MK_MEDALHAS.[login]
[Only registered and activated users can see links]


Podem fechar o tópico.

lockzao
30/01/2020, 05:21 PM
De nada.
Precisar estamos ai.