SQL3 查询结果去重
题目:现在运营需要查看用户来自于哪些学校,请从用户信息表中取出学校的去重数据。
示例:user_profile
id | device_id | gender | age | university | province |
1 | 2138 | male | 21 | 北京大学 | Beijing |
2 | 3214 | male | 复旦大学 | Shanghai | |
3 | 6543 | female | 20 | 北京大学 | Beijing |
4 | 2315 | female | 23 | 浙江大学 | ZheJiang |
5 | 5432 | male | 25 | 山东大学 | Shandong |
根据示例,你的查询应返回以下结果:
university |
北京大学 |
复旦大学 |
浙江大学 |
山东大学 |
select distinct university
from user_profile
---------------------------------------------------------------------------------------------------------------------------------
SQL4 查询结果限制返回行数
题目:现在运营只需要查看前2个用户明细设备ID数据,请你从用户信息表 user_profile 中取出相应结果。
示例:
id | device_id | gender | age | university | province |
1 | 2138 | male | 21 | 北京大学 | Beijing |
2 | 3214 | male | 复旦大学 | Shanghai | |
3 | 6543 | female | 20 | 北京大学 | Beijing |
4 | 2315 | female | 23 | 浙江大学 | ZheJiang |
5 | 5432 | male | 25 | 山东大学 | Shandong |
根据输入,你的查询应返回以下结果:
device_id |
2138 |
3214 |
select device_id
from user_profile
order by id
limit 2
使用LIMIT限制结果集
LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。
LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。
如果只给定一个参数,它表示返回最大的记录行数目。
如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。
为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1。
初始记录行的偏移量是 0(而不是 1)。
检索记录行 6-10
SELECT * FROM table LIMIT 5,5
检索记录行 11-last
SELECT * FROM table LIMIT 10,-1
检索前 5 个记录行
SELECT * FROM table LIMIT 5
---------------------------------------------------------------------------------------------------------------------------------
SQL5 将查询后的列重新命名
题目:现在你需要查看前2个用户明细设备ID数据,并将列名改为 'user_infos_example',,请你从用户信息表取出相应结果。
示例:user_profile
id | device_id | gender | age | university | province |
1 | 2138 | male | 21 | 北京大学 | Beijing |
2 | 3214 | male | 复旦大学 | Shanghai | |
3 | 6543 | female | 20 | 北京大学 | Beijing |
4 | 2315 | female | 23 | 浙江大学 | ZheJiang |
5 | 5432 | male | 25 | 山东大学 | Shandong |
根据示例,你的查询应返回以下结果:
user_infos_example |
2138 |
3214 |
select device_id as user_infos_example
from user_profile
order by id
limit 2
---------------------------------------------------------------------------------------------------------------------------------
SQL36 查找后排序
题目:现在运营想要取出用户信息表中的用户年龄,请取出相应数据,并按照年龄升序排序。
示例:user_profile
id | device_id | gender | age | university | gpa |
1 | 2138 | male | 21 | 北京大学 | 3.4 |
2 | 3214 | male | 23 | 复旦大学 | 4 |
3 | 6543 | female | 20 | 北京大学 | 3.2 |
4 | 2315 | female | 23 | 浙江大学 | 3.6 |
5 | 5432 | male | 25 | 山东大学 | 3.8 |
6 | 2131 | male | 28 | 北京师范大学 | 3.3 |
根据示例,你的查询应返回以下结果:
device_id | age |
6534 | 20 |
2138 | 21 |
3214 | 23 |
2315 | 23 |
5432 | 25 |
2131 | 28 |
select device_id, age
from user_profile
order by age
---------------------------------------------------------------------------------------------------------------------------------
SQL37 查找后多列排序
题目:现在运营想要取出用户信息表中的年龄和gpa数据,并先按照gpa升序排序,再按照年龄升序排序输出,请取出相应数据。
用户信息表:user_profile
id | device_id | gender | age | university | gpa |
1 | 2138 | male | 21 | 北京大学 | 3.4 |
2 | 3214 | male | 23 | 复旦大学 | 4 |
3 | 6543 | female | 20 | 北京大学 | 3.2 |
4 | 2315 | female | 23 | 浙江大学 | 3.6 |
5 | 5432 | male | 25 | 山东大学 | 3.8 |
6 | 2131 | male | 28 | 北京师范大学 | 3.3 |
你的查询应返回以下结果:
device_id | gpa | age |
6534 | 3.2 | 20 |
2131 | 3.3 | 28 |
2138 | 3.4 | 21 |
2315 | 3.6 | 23 |
5432 | 3.8 | 25 |
3214 | 4 | 23 |
select device_id, gpa, age
from user_profile
order by gpa, age
---------------------------------------------------------------------------------------------------------------------------------
SQL38 查找后降序排列
题目:现在运营想要取出用户信息表中对应的数据,并先按照gpa、年龄降序排序输出,请取出相应数据。
示例 user_profile:
id | device_id | gender | age | university | gpa |
1 | 2138 | male | 21 | 北京大学 | 3.4 |
2 | 3214 | male | 23 | 复旦大学 | 4 |
3 | 6543 | female | 20 | 北京大学 | 3.2 |
4 | 2315 | female | 23 | 浙江大学 | 3.6 |
5 | 5432 | male | 25 | 山东大学 | 3.8 |
6 | 2131 | male | 28 | 北京师范大学 | 3.3 |
根据示例,你的查询应返回以下结果:
device_id | gpa | age |
3214 | 4 | 23 |
5432 | 3.8 | 25 |
2315 | 3.6 | 23 |
2138 | 3.4 | 21 |
2131 | 3.3 | 28 |
6543 | 3.2 | 20 |
select device_id, gpa, age
from user_profile
order by gpa desc, age desc;
---------------------------------------------------------------------------------------------------------------------------------
SQL6 查找学校是北大的学生信息
题目:现在运营想要筛选出所有北京大学的学生进行用户调研,请你从用户信息表中取出满足条件的数据,结果返回设备id和学校。
示例:user_profile
id | device_id | gender | age | university | province |
1 | 2138 | male | 21 | 北京大学 | Beijing |
2 | 3214 | male | 复旦大学 | Shanghai | |
3 | 6543 | female | 20 | 北京大学 | Beijing |
4 | 2315 | female | 23 | 浙江大学 | ZheJiang |
5 | 5432 | male | 25 | 山东大学 | Shandong |
根据示例,你的查询应返回以下结果:
device_id | university |
2138 | 北京大学 |
6543 | 北京大学 |
select device_id, university
from user_profile
whereuniversity = '北京大学'
---------------------------------------------------------------------------------------------------------------------------------
SQL7 查找年龄大于24岁的用户信息
题目:现在运营想要针对24岁以上的用户开展分析,请你取出满足条件的设备ID、性别、年龄、学校。
用户信息表:user_profile
id | device_id | gender | age | university | province |
1 | 2138 | male | 21 | 北京大学 | Beijing |
2 | 3214 | male | 复旦大学 | Shanghai | |
3 | 6543 | female | 20 | 北京大学 | Beijing |
4 | 2315 | female | 23 | 浙江大学 | ZheJiang |
5 | 5432 | male | 25 | 山东大学 | Shandong |
根据输入,你的 查询应返回以下结果:
device_id | gender | age | university |
5432 | male | 25 | 山东大学 |
select device_id,gender,age,university
from user_profile
where age > 24
---------------------------------------------------------------------------------------------------------------------------------
SQL8 查找某个年龄段的用户信息
题目:现在运营想要针对20岁及以上且23岁及以下的用户开展分析,请你取出满足条件的设备ID、性别、年龄。
用户信息表:user_profile
id | device_id | gender | age | university | province |
1 | 2138 | male | 21 | 北京大学 | Beijing |
2 | 3214 | male | 复旦大学 | Shanghai | |
3 | 6543 | female | 20 | 北京大学 | Beijing |
4 | 2315 | female | 23 | 浙江大学 | ZheJiang |
5 | 5432 | male | 25 | 山东大学 | Shandong |
根据输入,你的查询应返回以下结果:
device_id | gender | age |
2138 | male | 21 |
6543 | female | 20 |
2315 | female | 23 |
select device_id,gender,age
from user_profile
whereage >= 20
and age <= 23
这里用between也可以
SELECT device_id,gender,age FROM user_profile WHERE age BETWEEN 20 AND 23
---------------------------------------------------------------------------------------------------------------------------------
SQL9 查找除复旦大学的用户信息
题目:现在运营想要查看除复旦大学以外的所有用户明细,请你取出相应数据
示例:user_profile
id | device_id | gender | age | university | province |
1 | 2138 | male | 21 | 北京大学 | Beijing |
2 | 3214 | male | 复旦大学 | Shanghai | |
3 | 6543 | female | 20 | 北京大学 | Beijing |
4 | 2315 | female | 23 | 浙江大学 | ZheJiang |
5 | 5432 | male | 25 | 山东大学 | Shandong |
根据输入,你的查询应返回以下结果:
device_id | gender | age | university |
2138 | male | 21 | 北京大学 |
6543 | female | 20 | 北京大学 |
2315 | female | 23 | 浙江大学 |
5432 | male | 25 | 山东大学 |
SELECT device_id,gender,age,university
FROM user_profile
WHERE university NOT IN ('复旦大学')
university != ('复旦大学')
两种都可以实现
---------------------------------------------------------------------------------------------------------------------------------
SQL10 用where过滤空值练习
题目:现在运营想要对用户的年龄分布开展分析,在分析时想要剔除没有获取到年龄的用户,请你取出所有年龄值不为空的用户的设备ID,性别,年龄,学校的信息。
示例:user_profile
id | device_id | gender | age | university | province |
1 | 2138 | male | 21 | 北京大学 | Beijing |
2 | 3214 | male | 复旦大学 | Shanghai | |
3 | 6543 | female | 20 | 北京大学 | Beijing |
4 | 2315 | female | 23 | 浙江大学 | ZheJiang |
5 | 5432 | male | 25 | 山东大学 | Shandong |
根据输入,你的 查询应返回以下结果:
device_id | gender | age | university |
2138 | male | 21 | 北京大学 |
6543 | female | 20 | 北京大学 |
2315 | female | 23 | 浙江大学 |
5432 | male | 25 | 山东大学 |
SELECTdevice_id,gender,age,university
FROMuser_profile
WHEREage IS NOT NULL
---------------------------------------------------------------------------------------------------------------------------------
SQL11 高级操作符练习(1)
题目:现在运营想要找到男性且GPA在3.5以上(不包括3.5)的用户进行调研,请你取出相关数据。
示例:user_profile
id | device_id | gender | age | university | gpa |
1 | 2138 | male | 21 | 北京大学 | 3.4 |
2 | 3214 | male | 复旦大学 | 4.0 | |
3 | 6543 | female | 20 | 北京大学 | 3.2 |
4 | 2315 | female | 23 | 浙江大学 | 3.6 |
5 | 5432 | male | 25 | 山东大学 | 3.8 |
根据输入,你的查询应返回以下结果:
device_id | gender | age | university | gpa |
3214 | male | 复旦大学 | 4.0 | |
5432 | male | 25 | 山东大学 | 3.8 |
SELECT device_id,gender,age,university,gpa
FROMuser_profile
WHEREgender = 'male'
ANDgpa > 3.5
---------------------------------------------------------------------------------------------------------------------------------
SQL12 高级操作符练习(2)
题目:现在运营想要找到学校为北大或GPA在3.7以上(不包括3.7)的用户进行调研,请你取出相关数据(使用OR实现)
示例:user_profile
id | device_id | gender | age | university | gpa |
1 | 2138 | male | 21 | 北京大学 | 3.4 |
2 | 3214 | male | 复旦大学 | 4.0 | |
3 | 6543 | female | 20 | 北京大学 | 3.2 |
4 | 2315 | female | 23 | 浙江大学 | 3.6 |
5 | 5432 | male | 25 | 山东大学 | 3.8 |
根据输入,你的查询应返回以下结果:
device_id | gender | age | university | gpa |
2138 | male | 21 | 北京大学 | 3.4 |
3214 | male | 复旦大学 | 4.0 | |
6543 | female | 20 | 北京大学 | 3.2 |
5432 | male | 25 | 山东大学 | 3.8 |
SELECT device_id,gender,age,university,gpa
FROMuser_profile
WHEREuniversity = '北京大学'
ORgpa > 3.7
---------------------------------------------------------------------------------------------------------------------------------
SQL13 Where in 和Not in
题目:现在运营想要找到学校为北大、复旦和山大的同学进行调研,请你取出相关数据。
示例:user_profile
id | device_id | gender | age | university | gpa |
1 | 2138 | male | 21 | 北京大学 | 3.4 |
2 | 3214 | male | 复旦大学 | 4.0 | |
3 | 6543 | female | 20 | 北京大学 | 3.2 |
4 | 2315 | female | 23 | 浙江大学 | 3.6 |
5 | 5432 | male | 25 | 山东大学 | 3.8 |
根据输入,你的查询应返回以下结果:
device_id | gender | age | university | gpa |
2138 | male | 21 | 北京大学 | 3.4 |
3214 | male | 复旦大学 | 4.0 | |
6543 | female | 20 | 北京大学 | 3.2 |
5432 | male | 25 | 山东大学 | 3.8 |
SELECT device_id,gender,age,university,gpa
FROMuser_profile
WHEREuniversity IN ('北京大学', '复旦大学', '山东大学')
---------------------------------------------------------------------------------------------------------------------------------
SQL14 操作符混合运用
题目:现在运营想要找到gpa在3.5以上(不包括3.5)的山东大学用户 或 gpa在3.8以上(不包括3.8)的复旦大学同学进行用户调研,请你取出相应数据
示例:user_profile
id | device_id | gender | age | university | province | gpa |
1 | 2138 | male | 21 | 北京大学 | BeiJing | 3.4 |
2 | 3214 | male | NULL | 复旦大学 | Shanghai | 4 |
3 | 6543 | female | 20 | 北京大学 | BeiJing | 3.2 |
4 | 2315 | female | 23 | 浙江大学 | ZheJiang | 3.6 |
5 | 5432 | male | 25 | 山东大学 | Shandong | 3.8 |
根据输入,你的查询应返回以下结果:(该题对于小数点后面的0不需要计算与统计,后台系统会统一输出小数点后面1位)
device_id | gender | age | university | gpa |
3214 | male | NULL | 复旦大学 | 4 |
5432 | male | 25 | 山东大学 | 3.8 |
SELECTdevice_id,gender,age,university,gpa
FROMuser_profile
WHERE(university IN ('山东大学') AND gpa > 3.5)
OR(university IN ('复旦大学') AND gpa > 3.8)
---------------------------------------------------------------------------------------------------------------------------------
SQL15 查看学校名称中含北京的用户
题目:现在运营想查看所有大学中带有北京的用户的信息,请你取出相应数据。
示例:用户信息表:user_profile
id | device_id | gender | age | university | gpa |
1 | 2138 | male | 21 | 北京大学 | 3.4 |
2 | 3214 | male | 复旦大学 | 4.0 | |
3 | 6543 | female | 20 | 北京大学 | 3.2 |
4 | 2315 | female | 23 | 浙江大学 | 3.6 |
5 | 5432 | male | 25 | 山东大学 | 3.8 |
6 | 2131 | male | 28 | 北京师范大学 | 3.3 |
根据示例,你的查询应返回如下结果:
device_id | age | university |
2138 | 21 | 北京大学 |
6543 | 20 | 北京大学 |
2131 | 28 | 北京师范大学 |
SELECTdevice_id,age,university
FROMuser_profile
WHEREuniversity like '%北京%'