Я делаю упражнения самостоятельно, чтобы понять, как работает postgre SQL, и это о взглядах. Я не могу завершить этот, где я должен отобразить 10 самых больших объектов с наибольшим радиусом (планеты и спутники).
У меня есть 3 таблицы:
pl anet:
id | name | population | radius | period | id_system
----+---------+------------+--------+--------+-----------
1 | Mercury | 0 | 2439 | 88 | 1
2 | Venus | 0 | 6051 | 224 | 1
3 | Earth | 7000000000 | 6371 | 365 | 1
4 | Mars | 0 | 3389 | 687 | 1
5 | Jupiter | 0 | 69911 | 4331 | 1
6 | Saturn | 0 | 58232 | 10747 | 1
7 | Uranus | 0 | 25362 | 30589 | 1
8 | Neptune | 0 | 24622 | 59800 | 1
planetary_system:
id | name | star
----+-------+------
1 | Solar | Sun
и спутник:
id | name | radius | id_planet
----+-----------+--------+-----------
1 | Moon | 1737 | 3
2 | Titan | 2576 | 6
3 | Ganymede | 2634 | 5
Ожидаемый результат (отсортировано по радиусу DES C, имя):
type | system | name | radius
-----------+--------+----------+--------
planet | Solar | Jupiter | 69911
planet | Solar | Saturn | 58232
planet | Solar | Uranus | 25362
planet | Solar | Neptune | 24622
planet | Solar | Earth | 6371
planet | Solar | Venus | 6051
planet | Solar | Mars | 3389
satellite | Solar | Ganymede | 2634
satellite | Solar | Titan | 2576
planet | Solar | Mercury | 2439
Мое решение, но мне не хватает столбцов, как я могу его изменить?
CREATE OR REPLACE VIEW view_biggest_entities(system, radius_) AS
SELECT *
FROM (SELECT planet.radius, satellite.radius
FROM planet, satellite) AS rad
ORDER BY rad DESC
LIMIT 10;