Abaixo está uma instrução que descreve uma tarefa de geração de SQL, combinada com uma entrada que fornece mais contexto sobre os esquemas de tabela disponíveis. Escreva o código SQL que responda adequadamente à solicitação
 ###Instrução: Encontre os 5 principais passeios virtuais por receita total, para passeios com preço acima da média.
 ###Tabelas: 
CREATE TABLE VirtualTours (TourID int, TourName varchar(255), Price float, Revenue float); INSERT INTO VirtualTours (TourID, TourName, Price, Revenue) VALUES (1, 'Tour A', 10, 500), (2, 'Tour B', 15, 800), (3, 'Tour C', 20, 1200), (4, 'Tour D', 5, 300), (5, 'Tour E', 25, 1500);
SELECT TourName, Revenue FROM (SELECT TourName, Price, Revenue, AVG(Price) OVER () as AvgPrice, RANK() OVER (ORDER BY Revenue DESC) as RevenueRank FROM VirtualTours) as Subquery WHERE Subquery.Price > Subquery.AvgPrice AND Subquery.RevenueRank <= 5;