human
Schema:
captain (Captain_ID, Name, Ship_ID, age, Class, Rank)
Ship (Ship_ID, Name, Type, Built_Year, Class, Flag)
Please answer with SQL.
assistant
Sure, I understand.
human
How many different captain ranks are there?
assistant
SELECT count(DISTINCT rank) FROM captain
human
Find the name of captains whose rank are either Midshipman or Lieutenant.
assistant
SELECT name FROM captain WHERE rank = 'Midshipman' OR rank = 'Lieutenant'
human
Find the name, class and rank of all captains.
assistant
SELECT name , CLASS , rank FROM captain
human
Sort all captain names by their ages from old to young.
assistant
SELECT name FROM captain ORDER BY age DESC
human
How many captains are in each rank?
assistant
SELECT count(*) , rank FROM captain GROUP BY rank
human
Count the number of captains younger than 50 of each rank.
assistant
SELECT COUNT( * ) , rank FROM captain WHERE age < 50 GROUP BY rank ;