I have started to learn MySQL.
Here is the table world
:
+-------------+-----------+---------+
| name | continent | area |
+--
what about this sql :
select distinct continent,
(select name
from world y where y.continent = x.continent limit 1 ) as name
from world x
If you need list each continent alphabetically, you have use
SELECT * from world ORDER by continent
But, If you nedd list each country your have use
SELECT * from world ORDER by name
This is a simple aggegation:
SELECT continent, MIN(name) AS name
FROM world
GROUP BY continent
ORDER by continent
Select distinct continent, name from world x
where name <=All (Select name from world y where x.continent=y.continent)
The SqlZoo solution would better look like this:
SELECT continent, name FROM world x
WHERE name <= ALL
(SELECT name FROM world y WHERE y.continent=x.continent)