查询结果去重:
SELECT id from tabl group by id;
查询指定范围的数据:
SELECT device_id from user_profile where id between 1 AND 2;select device_id from user_profile limit 0,2;
对指定列查询后进行重新命名
select device_id as user_infors_example from user_profile limit 0,2;
查询列表中的指定字段:
SELECT device_id,university from user_profile where university='北京大学';select device_id,university from user_profile where university like '%北京%'
查询列表中年龄大于24的:
SELECT age from tabl where ager>24;
查询所有系号在2和3之间的班号和班名
SELECT 班号,班名 FROM 班级表 WHERE 系号 BETWEEN 2 AND 3SELECT 班号,班名 FROM 班级表 WHERE 系号 >=2 AND 系号<=3
查询所有系号不在2和3之间的班号和班名
SELECT 班号,班名 FROM 班级表 WHERE 系号 NOT BETWEEN 2 AND 3SELECT 班号,班名 FROM 班级表 WHERE 系号 <2 AND 系号 >3
查询1995年3月出生的学生信息
SELECT 学号, 姓名, 性别, 出生日期 FROM 学生表 WHERE 出生日期 BETWEEN '1995/3/1' AND '1995/3/31
查询列表中除了某一个值以外的数据:
select device_id from user_profile where name != '复旦大学'
查找列表中非空值
select device_id from user_profile where age is not NULL;
在WHERE子句中可以使用逻辑运算符AND和OR来组成多条件查询。
使用AND谓词的语法格式如下:
布尔表达式1 AND 布尔表达式2 AND … AND 布尔表达式n
查询11212P和11214D班所有男生的学号、姓名、性别和班号:
SELECT 学号,姓名,性别,班号 FROM 学生表 WHERE (班号= ‘ 11212P ’ OR 班号= ‘ 11214D ’) AND 性别=‘男’
用标题的两个关键字中的一个 in(字段...) 包含条件的字段,not in(字段..) 除字段以外的推荐用in ,增加复用性
select device_id,gender,age,university,gpa from user_profile where university in('北京大学','复旦大学','山东大学');
查询名称中包含某字段的详细信息
匹配串中可包含如下四种通配符:
_:匹配任意一个字符;
%:匹配0个或多个字符;
[ ]:匹配[ ]中的任意一个字符(若要比较的字符是连续的,则可以用连字符“-”表 达 );
[^ ]:不匹配[ ]中的任意一个字符。
查询学生表中姓‘张’的学生的详细信息
SELECT * FROM 学生表 WHERE 姓名 LIKE ‘张%’
查询姓“张”且名字是3个字的学生姓名
SELECT * FROM 学生表 WHERE 姓名 LIKE '张__’;#两个下划线
查询最大值
SELECT MAX(id) from tabl where name='复旦大学';