Time: 20 minutes
Difficulty: moderate
1.SELECT DISTINCT QuestLeader
FROM Quests;
2.SELECT TypeName, SUM(TreasureValue) AS TotalValue
FROM Treasures INNER JOIN Treasure_Types ON Treasures.TypeID=Treasure_Types.TypeID
GROUP BY TypeName
ORDER BY TotalValue DESC;
3.SELECT TOP 5 q.QuestName, SUM(t.TreasureValue) AS TotalLoot
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY q.QuestName
ORDER BY SUM(t.TreasureValue) DESC
4.SELECT q.QuestLeader, q.QuestName, ROUND(AVG(t.TreasureValue),2) AS AvgTreasureValue
FROM Quests AS q INNER JOIN Treasures as t ON t.QuestID=q.QuestID
GROUP BY QuestLeader, GuestName
ORDER BY ROUND(AVG(t.TreasureValue),2) DESC;
5.SELECT TypeName, Count(t.TypeID) AS CountFound
FROM Treasures AS t INNER JOIN Treasure_Types AS tt ON t.TypeID = tt.TypeID
GROUP BY TypeName
ORDER BY Count(t.TypeID) ASC;
type or paste code here
Time to Complete 25 min
Difficulty: Medium
Q1: SELECT DISTINCT QuestLeader
FROM Quests;
Q2: SELECT TypeName, SUM(TreasureValue) As TotalValue
FROM Treasures As t INNER JOIN Treasure_Types As tr ON tr.TypeID = t.TypeID
GROUP BY TypeName
ORDER BY Sum(TreasureValue) DESC;
Q3: SELECT TOP 5 q.QuestName, SUM(t.TreasureValue) AS TotalLoot
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY q.QuestName
ORDER BY SUM(t.TreasureValue) DESC;
Q4: SELECT QuestLeader, QuestName, Round(Avg(TreasureValue), 2) AS AvgTreasureValue
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestLeader, QuestName
ORDER BY Avg(TreasureValue) DESC;
Q5: SELECT TypeName, COUNT(T.TypeID) AS CountFound
FROM Treasures AS T INNER JOIN Treasure_Types AS TT ON T.TypeID = TT.TypeID
GROUP BY TypeName
ORDER BY COUNT(T.TypeID);
Time to Complete: 20 min
Difficulty: Intermediate
Solution:
- SELECT DISTINCT QuestLeader
FROM Quests;
- SELECT TypeName, SUM(TreasureValue) AS TotalValue
FROM Treasures AS t
INNER JOIN Treasure_types AS tt on t.typeID = tt.typeID
GROUP BY TypeName
ORDER BY SUM(TreasureValue) DESC;
- SELECT TOP 5 QuestName, SUM(TreasureValue) as TotalLoot
FROM Quests as q
INNER JOIN Treasures as t ON t.QuestID = q.QuestID
GROUP BY QuestName
ORDER BY SUM(TreasureValue) DESC;
- SELECT QuestLeader, QuestName, Round(Avg(TreasureValue), 2) as AvgTreasureValue
FROM Quests as q
INNER JOIN Treasures as t on t.questID = q.questID
GROUP BY QuestLeader, QuestName
ORDER BY Avg(TreasureValue) DESC;
- SELECT TypeName, COUNT(t.TypeID) as CountFound
FROM Treasures as t
INNER JOIN Treasure_types as tr on t.typeID = tr.typeID
GROUP BY TypeName
ORDER BY COUNT(t.TypeID);
Time: 35 minutes
Difficulty: medium
1: SELECT DISTINCT QuestLeader
FROM Quests;
2: SELECT Treasure_Types.TypeName, SUM (Treasures.TreasureValue) AS TotalValue
FROM Treasures
INNER JOIN Treasure_Types ON Treasures.TypeID = Treasure_Types.TypeID
GROUP BY Treasure_Types.TypeName
ORDER BY SUM (Treasures.TreasureValue) DESC;
3: SELECT TOP 5 QuestName, Sum(TreasureValue) AS TotalLoot
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestName
ORDER BY Sum(TreasureValue) DESC;
4: SELECT q.QuestLeader, q.QuestName, Round(AVG(t.TreasureValue),2) AS AvgTreasureValue
FROM Treasures AS t
INNER JOIN Quests AS q ON t.QuestID = q.QuestID
GROUP BY q.QuestLeader, q.QuestName, AvgTreasureValue
ORDER BY AVG(TreasureValue) DESC;
5: SELECT TypeName, COUNT(t.TypeID) AS CountFound
FROM Treasure_Types tt
INNER JOIN Treasures t ON tt.TypeID = t.TypeID
GROUP BY TypeName
ORDER BY COUNT(t.TypeID);
Time: 30 minutes
Difficulty: medium
Solutions:
Q1:
SELECT QuestLeader
FROM Quests;
Q2:
SELECT TypeName, sum(TreasureValue) AS TotalValue
FROM Treasures INNER JOIN Treasure_Types ON Treasures.TypeID=Treasure_Types.TypeID
GROUP BY TypeName
ORDER BY sum(TreasureValue) DESC;
Q3:
SELECT Quests.QuestName, Sum(Treasures.TreasureValue) AS TotalLoot
FROM Quests INNER JOIN Treasures ON Quests.QuestID=Treasures.QuestID
GROUP BY Quests.QuestName
ORDER BY Sum(Treasures.TreasureValue)
LIMIT 5;
Q4:
SELECT QuestLeader, QuestName, round(avg(TreasureValue), 2) AS AvgTreasureValue
FROM Quests INNER JOIN Treasures ON Quests.QuestID=Treasures.QuestID
GROUP BY QuestLeader, QuestName
ORDER BY avg(TreasureValue) DESC
Q5:
SELECT Treasure_Types.TypeName, count(Treasures.TypeID) AS CountFound
FROM Treasure_Types INNER JOIN Treasures ON Treasures.TypeID=Treasure_Types.TypeID
GROUP BY Treasure_Types.TypeName
ORDER BY count(Treasures.TypeID) DESC
Time: 25 mins
Difficulty: Intermediate
Solution:
1.SELECT DISTINCT QuestLeader
FROM Quests;
2.SELECT TypeName AS Expr1, Sum(t.TreasureValue) AS TotalValue
FROM Treasures AS t INNER JOIN Treasure_Types AS tr ON t.TypeID = tr.TypeID
GROUP BY tr.TypeName
ORDER BY Sum(t.TreasureValue) DESC;
3.SELECT TOP 5 QuestName, Sum(TreasureValue) AS TotalLoot
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestName
ORDER BY Sum(TreasureValue) DESC;
4.SELECT QuestLeader, QuestName, Round(Avg(TreasureValue), 2) AS AvgTreasureValue
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestLeader, QuestName
ORDER BY Avg(TreasureValue) DESC;
5.SELECT TypeName, COUNT(t.TypeID) AS CountFound
FROM Treasures AS t INNER JOIN Treasure_Types AS tr ON t.TypeID = T=tr.TypeID
GROUP BY TypeName
ORDER BY COUNT(t.TypeID);
Time to Complete: 30 minutes
Difficulty: Intermediate
- SELECT DISTINCT QuestLeader
FROM Quests;
- SELECT TypeName, Sum(TreasureValue) AS TotalValue
FROM Treasures AS t INNER JOIN Treasure_Types AS tt ON t.TypeID = tt.TypeID
GROUP BY TypeName
ORDER BY Sum(TreasureValue) DESC;
- SELECT TOP 5 QuestName, Sum(TreasureValue) AS TotalLoot
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestName
ORDER BY Sum(TreasureValue) DESC;
- SELECT QuestLeader, QuestName, Round(Avg(TreasureValue), 2) AS AvgTreasureValue
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestLeader, QuestName
ORDER BY Avg(TreasureValue) DESC;
- SELECT TypeName, Count(t.TypeID) AS CountFound
FROM Treasures AS t INNER JOIN Treasure_Types AS tt ON t.TypeID = tt.TypeID
GROUP BY TypeName
ORDER BY Count(t.TypeID);
Time to Complete: 30 Minutes
Difficulty: Intermediate
Solution:
1: SELECT DISTINCT QuestLeader
FROM Quests;
2: SELECT tt.TypeName, SUM(T.treasurevalue) AS Total_Value
FROM Treasures t
INNER JOIN Treasure_Types tt ON T.typeid = tt.typeid
group by tt.typename
ORDER BY SUM(TreasureValue) DESC;
3:SELECT TOP 5 QuestName, Sum(TreasureValue) AS TotalLoot
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestName
ORDER BY Sum(TreasureValue) DESC;
4:SELECT q.QuestLeader, q.QuestName, ROUND(AVG(t.treasurevalue),2) as AvgTreasureValue
FROM Quests q INNER JOIN treasures t on t.QuestID = q.QuestID
group by q.QuestLeader, q.QuestName
order by AVG(treasurevalue) DESC;
5:SELECT tt.TypeName, Count(t.TypeID) AS CountFound
FROM Treasures t
INNER JOIN Treasure_Types tt ON t.TypeID = tt.TypeID
GROUP BY tt.TypeName
ORDER BY Count(t.TypeID);
Time: 20 Min
Difficulty: Medium
Solutions: See Below
Select Distinct QuestLeader
From Quests;
2)
Select TypeName, Sum(TreasureValue) AS TotalValue
From Treasures Inner join Treasure_Types on t.TypeID = tt.TypeID
Group by TypeName
order by Sum(TreasureValue) DESC;
3)
Select top 5 QuestName, Sum(TreasureValue) AS TotalLoot
From Quests Inner join Treasures on t.QuestID = q.QuestID
Group by QuestName
Order by Sum(TreasureValue) DESC;
4)_
Select QuestLeader, QuestName, Round(Avg(TreasureValue), 2) AS AvgTreasureValue
From Quests Inner join Treasures on t.QuestID = q.QuestID
Group by QuestLeader, QuestName
order by Avg(TreasureValue) DESC;
5)
Select TypeName, Count(t.TypeID) AS CountFound
From Treasures Inner join Treasure_Types on t.TypeID = tt.TypeID
Group by TypeName
Order by Count(t.TypeID);
Time to Complete: 20 mins
Rating: Intermediate
Solutions:
-
SELECT DISTINCT QuestLeader
FROM Quests;
-
SELECT tt.TypeName, SUM(t.TreasureValue) AS TotalValue
FROM Treasure_Types tt
INNER JOIN Treasures t ON tt.TypeID = t.TypeID
GROUP BY TypeName
ORDER BY SUM(t.TreasureValue) DESC;
-
SELECT TOP 5 q.QuestName, Sum(t.TreasureValue) AS TotalLoot
FROM Quests q
INNER JOIN Treasures t ON q.QuestID = t.QuestID
GROUP BY QuestName
ORDER BY Sum(TreasureValue) DESC;
-
SELECT q.QuestLeader, q.QuestName, ROUND(AVG(t.TreasureValue), 2) AS AvgTreasureValue
FROM Quests q
INNER JOIN Treasures t ON q.QuestID = t.QuestID
GROUP BY q.QuestLeader, q.QuestName
ORDER BY AVG(t.TreasureValue) DESC;
-
SELECT tt.TypeName, COUNT(t.TypeID) AS CountFound
FROM Treasure_Types tt
INNER JOIN Treasures t ON tt.TypeID = t.TypeID
GROUP BY tt.TypeName
ORDER BY COUNT(t.TypeID);
Time to complete: 30 mins
Difficulty: Easy
Solution:
Question 1
SELECT DISTINCT q.Field3 AS QuestLeader
FROM Quests q;
Question 2
SELECT tt.TypeName, SUM(t.TreasureValue) AS TotalValue
FROM Treasures t
INNER JOIN Treasure_Types tt ON tt.TypeID=t.TypeID
GROUP BY tt.TypeName
ORDER BY SUM(t.TreasureValue) DESC;
Question 3
SELECT TOP 5 q.Field2 AS QuestName, SUM(t.TreasureValue) AS TotalLoot
FROM Quests q
INNER JOIN Treasures t ON q.QuestID=t.QuestID
GROUP BY q.Field2
ORDER BY SUM(t.TreasureValue) DESC;
Question 4
SELECT q.QuestLeader, q.QuestName, ROUND(AVG(t.TreasureValue),2) AS AvgTreasureValue
FROM Treasures t INNER JOIN Quests q ON q.QuestID=t.QuestID
GROUP BY q.QuestLeader, q.QuestName
ORDER BY ROUND(AVG(t.TreasureValue),2) DESC;
Question 5
SELECT TypeName, Count(t.TypeID) AS CountFound
FROM Treasures t INNER JOIN Treasure_Types tt ON t.TypeID = tt.TypeID
GROUP BY TypeName
ORDER BY Count(t.TypeID);
Time: 25 Minutes
Difficulty: Beginner
Notes: I had some difficulty with the access file not sure if it was something wrong with the file or something wrong on my end.
Question 1:
SELECT DISTINCT QuestLeader
FROM Quests
Question 2:
SELECT TypeName, SUM(TreasureValue) AS TotalValue
FROM Treasures
INNER JOIN Treasure_Types ON Treasures.TypeID = Treasure_Types.TypeID
GROUP BY TypeName
ORDER BY Sum(TreasureValue)DESC;
Question 3:
SELECT TOP 5 QuestName, Sum(TreasureValue) AS TotalLoot
FROM Quests
INNER JOIN Treasures ON Quests.QuestID = Treasures.QuestID
GROUP BY QuestName
ORDER BY Sum(TreasureValue) DESC;
Question 4:
SELECT QuestLeader, QuestName, ROUND(AVG(TreasureValue), 2) AS AvgTreasureValue
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestLeader, QuestName
ORDER BY ROUND(AVG(TreasureValue)) DESC
Question 5:
SELECT TypeName, Count(t.TypeID) AS CountFound
FROM Treasures AS t INNER JOIN Treasure_Types AS tt ON t.TypeID = tt.TypeID
GROUP BY TypeName
ORDER BY Count(t.TypeID);
Time to Complete: 20
Difficulty: Intermediate
Solution
1)
SELECT DISTINCT QuestLeader
FROM Quests
SELECT TypeName, SUM(TreasureValue) as TotalValue
FROM Treasures as t
INNER JOIN Treasure_Types as tt on t.type_id = tt.type_id
GROUP BY typename
ORDER BY SUM(treasurevalue) desc;
SELECT TOP 5 QuestName, SUM(TreasureValue) as TotalLoot
FROM Quests as q
INNER JOIN Treasures as t ON t.quest_id=q.questID
GROUP BY QuestName
ORDER BY Sum(TreasureValue) desc;
SELECT QuestLeader, QuestName, ROUND(Avg(TreasureValue),2) as AVGTreasureValue
FROM Quests as q
INNER JOIN Treasures as t on t.quest_id = q.quest_id
GROUP BY QuestLeader, QuestName
ORDER BY Avg(TreasureValue) desc;
SELECT TypeName, COUNT(t.type_id) as CountFound
FROM Treasures as t
INNER JOIN treasure_types as tt ON t.type_id = tt.type_id
GROUP BY typename
ORDER BY Count(t.type_id) asc;
Time to complete: 25 Minutes
Level: Beginner
Results: Below
- SELECT Distinct QuestLeader
From Quests ;
- SELECT TypeName, Sum(TreasureValue) AS TotalValue
From Treasures AS t
Inner Join Treasure_Type AS tr ON t.TypeID=tr.TypeID
Group By TypeName
Order By Sum(TresaureValue) DESC;
- SELECT Top 5 QuestName, Sum(TreasureValue) AS TotalLoot
From Quests AS q
Inner Join Treasures AS t ON t.QuestID=q.QuestID
Group By QuestName
Order By Sum(TreasureValue) DESC;
- SELECT QuestLeader, QuestName, Round(Avg(TreasureValue), 2) AS AvgTreasureValue
From Quests AS q
Inner Join Treasures AS t ON t.QuestID=q.QuestID
Group By QuestLeader, QuestName
Order By Avg(TreasureValue) DESC;
- SELECT TypeName, Count(t.TypeID) AS CountFound
From Treasures AS t
Inner Join Treasure_Types AS tt ON t.typeID=tt.TypeID
Group By TypeName
Order By Count(t.TypeID);
Time: 18 mins
Difficulty: Easy
Comments: NA
Solution:
1.)
SELECT DISTINCT QuestLeader
FROM Quests;
2.)
SELECT TypeName, Sum(TreasureValue) AS TotalValue
FROM Treasures AS t INNER JOIN Treasure_Types AS tt ON t.TypeID = tt.TypeID
GROUP BY TypeName
ORDER BY Sum(TreasureValue) DESC;
3.)
SELECT TOP 5 QuestName, Sum(TreasureValue) AS TotalLoot
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestName
ORDER BY Sum(TreasureValue) DESC;
4.)
SELECT QuestLeader, QuestName, Round(Avg(TreasureValue), 2) AS AvgTreasureValue
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestLeader, QuestName
ORDER BY Avg(TreasureValue) DESC;
5.)
SELECT TypeName, Count(t.TypeID) AS CountFound
FROM Treasures AS t INNER JOIN Treasure_Types AS tt ON t.TypeID = tt.TypeID
GROUP BY TypeName
ORDER BY Count(t.TypeID);
Time: 30 mins
Difficulty: Intermediate
- SELECT DISTINCT QuestLeader
FROM Quests;
- SELECT TypeName, SUM(TreasureValue) AS TotalValue
FROM Treasures AS t INNER JOIN Treasure_Types AS tt ON t.TypeID = tt.TypeID
GROUP BY TypeName
ORDER BY SUM(TreasureValue) DESC;
- SELECT TOP 5 QuestName, SUM(TreasureValue) AS TotalLoot
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestName
ORDER BY Sum(TreasureValue) DESC;
- SELECT QuestLeader, QuestName, Round(Avg(TreasureValue), 2) AS AvgTreasureValue
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY QuestLeader, QuestName
ORDER BY AVG(TreasureValue) DESC;
- SELECT TypeName, Count(t.TypeID) AS CountFound
FROM Treasures AS t INNER JOIN Treasure_Types AS tt ON t.TypeID = tt.TypeID
GROUP BY TypeName
ORDER BY Count(t.TypeID);
Time: 30 min
Difficulty: Intermediate
Solution:
- SELECT DISTINCT Field3 AS QuestLeader
FROM Quests;
- SELECT tt.TypeName, SUM(t.TreasureValue) AS TotalValue
FROM Treasure_Types AS tt INNER JOIN Treasures AS t ON tt.TypeID = t.TypeID
GROUP BY tt.TypeName;
- SELECT TOP 5 q.QuestName, Sum(t.TreasureValue) AS TotalLoot
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY q.QuestName
ORDER BY Sum(t.TreasureValue) DESC;
- SELECT q.QuestLeader, q.QuestName, Round(Avg(t.TreasureValue), 2) AS AvgTreasureValue
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID = q.QuestID
GROUP BY q.QuestLeader, q.QuestName
ORDER BY Avg(t.TreasureValue) DESC;
- SELECT tt.TypeName, COUNT(t.TypeID) AS CountFound
FROM Treasures AS t
INNER JOIN Treasure_Types tt ON t.TypeID = tt.TypeID
GROUP BY tt.TypeName;
Time To Complete: 30 minutes
Difficulty: Intermediate
Solution:
Query 1
SELECT DISTINCT QuestLeader
FROM Quests;
Query 2
SELECT TypeName, SUM(TreasureValue), AS TotalValue
FROM Treasures AS t INNER JOIN Treasure_Types AS tt ON t.TypeID=tt.TypeID
GROUP BY TypeName
ORDER BY SUM(TreasureValue) DESC;
Query 3
SELECT TOP 5 QuestName, SUM(TreasureValue) AS TotalLoo
FROM Quests AS q INNER JOIN Treasures AS t ON q.QuestID=t.QuestID
GROUP BY QuestName
ORDER BY SUM(TreasureValue) DESC;
Query 4
SELECT QuestLeader, QuestName, Round(Avg(TreasureValue),2) AS AvgTreasureValue
FROM Quests AS q INNER JOIN Treasures AS t ON t.QuestID=q.QuestID
GROUP BY QuestLeader, QuestName
ORDER BY Avg(TreasureValue) DESC;
Query 5
SELECT TypeName, Count(t.TypeID) AS CountFound
FROM Treasures AS t INNER JOIN Treasure_Types AS tt ON t.TypeID=tt.TypeID
GROUP BY TypeName
ORDER BY Count(t.TypeID);
Time to complete: 30 min
Rating: Beginner
-
SELECT DISTINCT QuestLeader
FROM Quests;
-
SELECT tt.TypeName, SUM(ts.TreasureValue) AS TotalValue
From Treasure_Types AS tt
INNER JOIN Treasures AS ts ON tt.TypeID=ts.TypeID
GROUP BY tt.TypeName
ORDER BY SUM(ts.TreasureValue) DESC;
-
SELECT TOP 5 q.QuestName, SUM(t.TreasureValue) AS TotalLoot
FROM Quests q
INNER JOIN Treasures t ON q.QuestID=t.QuestID
GROUP BY q.QuestName
ORDER BY SUM(t.TreasureValue) DESC;
-
SELECT q.QuestLeader, q.QuestName, ROUND(AVG(t.TreasureValue),2) AS AvgTreasureValue
FROM Quests q
INNER JOIN Treasures t ON q.QuestID=t.QuestID
GROUP BY q.QuestLeader, q.QuestName
ORDER BY ROUND(AVG(t.TreasureValue),2) DESC;
-
SELECT tt.TypeName, COUNT(t.TypeID) AS CountFound
FROM Treasure_Types tt
INNER JOIN Treasures t ON tt.TypeID=t.TypeID
GROUP BY tt.TypeName
ORDER BY COUNT(t.TypeID) ASC;