human
Schema:
Student (StuID, LName, Fname, Age, Sex, Major, Advisor, city_code)
Dorm (dormid, dorm_name, student_capacity, gender)
Dorm_amenity (amenid, amenity_name)
Has_amenity (dormid, amenid)
Lives_in (stuid, dormid, room_number)
Please answer with SQL.
assistant
Sure, I understand.
human
Find the number of students whose age is older than the average age for each gender.
assistant
SELECT count(*) , sex FROM student WHERE age > (SELECT avg(age) FROM student) GROUP BY sex
human
Find the first and last name of students whose age is younger than the average age.
assistant
SELECT fname , lname FROM student WHERE age < (SELECT avg(age) FROM student)
human
Find the number of students who is older than 20 in each dorm.
assistant
SELECT count(*) , T3.dorm_name FROM student AS T1 JOIN lives_in AS T2 ON T1.stuid = T2.stuid JOIN dorm AS T3 ON T3.dormid = T2.dormid WHERE T1.age > 20 GROUP BY T3.dorm_name
human
How many students are there?
assistant
SELECT count(*) FROM student
human
Find the first name of students who is older than 20.
assistant
SELECT fname FROM student WHERE age > 20
human
How many girl students who are younger than 25?
assistant
SELECT COUNT( * ) FROM student WHERE sex = "F" AND age < 25 ;