The Overall Average
Part of the Fundamentals section of Coddy's SQL journey — lesson 56 of 72.
Challenge
EasyAvailable tables and columns:
<strong>enom_gilpane</strong>:<strong>part_id</strong>,<strong>rpm</strong>,<strong>watt</strong>,<strong>size</strong><strong>castle_loctus</strong>:<strong>part_id</strong>,<strong>rpm</strong>,<strong>watt</strong>,<strong>size</strong><strong>honpan_bilopsa</strong>:<strong>part_id</strong>,<strong>rpm</strong>,<strong>watt</strong>,<strong>size</strong><strong>yurnol_qoltam</strong>:<strong>part_id</strong>,<strong>rpm</strong>,<strong>watt</strong>,<strong>size</strong>
Finally, calculate the average quality for each part_id.
Return part_id avg_quality, sorted by avg_quality in descending order.
Try it yourself
SELECT part_id, AVG(quality) AS quality
FROM (
SELECT part_id, AVG(quality) AS quality
FROM (
SELECT part_id, (rpm * (watt + (SELECT AVG(watt) FROM enom_gilpane)) / size) as quality
FROM enom_gilpane
)
GROUP BY part_id
HAVING quality > AVG(quality)
UNION ALL
SELECT part_id, AVG(quality) AS quality
FROM (
SELECT part_id, (rpm * (watt + (SELECT AVG(watt) FROM castle_loctus)) / size) as quality
FROM castle_loctus
)
GROUP BY part_id
HAVING quality > AVG(quality)
UNION ALL
SELECT part_id, AVG(quality) AS quality
FROM (
SELECT part_id, (rpm * (watt + (SELECT AVG(watt) FROM honpan_bilopsa)) / size) as quality
FROM honpan_bilopsa
)
GROUP BY part_id
HAVING quality > AVG(quality)
UNION ALL
SELECT part_id, AVG(quality) AS quality
FROM (
SELECT part_id, (rpm * (watt + (SELECT AVG(watt) FROM yurnol_qoltam)) / size) as quality
FROM yurnol_qoltam
)
GROUP BY part_id
HAVING quality > AVG(quality)
)
GROUP BY part_id
ORDER BY quality DESCAll lessons in Fundamentals
4More Keywords
The IN keywordThe BETWEEN keywordThe LIKE keywordThe AS keywordRecap - Cellphone Models10Imaginary Products
Adjust WattCalculate Product Quality2Conditions
Conditions BasicsThe AND keywordThe OR keywordThe NOT keywordMultiple Conditions CombinedParenthesisBooleans5Arithmetic Operations
Mathematical OperatorsMathematical ColumnsThe Modulo OperationThe ROUND() Function3Specific Return Format
Null valuesSort Results Part 1Sort Results Part 2Recap - Cyber Security FirmLimit number of recordsRecap - Vehicle Factory6Intro Challenges
Recap - Parliamentary ElectionRecap - Police Criminal ArrestRecap - Bar Beverage ContainerRecap - Engineer new columns