写完毕业论文,终于有空复习sql了,继续学习之旅~下次不能和上次一样,简单的sql语句都忘记了。
1.查询结果去重 关键字 distinct
select distinct university from user_profile;
2. 将查询后的列重新命名 关键字 as 关键字limit
查选结果返回两条 limit后面的0可以省略(索引,个数)
select device_id as user_infors_example from user_profile limit 0,2;
3.查找排序 关键字order by
ASC 是ascend的缩写上升(升序 ) DESC 是descend的缩写下降(降序)
select device_id,age from user_profile order by age ASC;
4.查找某个数据段时 关键字可以用where或者用between and
select device_id,gender,age from user_profile where age between 20 and 23
5.排除某些用户的信息 关键字not in
select device_id,gender,age,university from user_profile where university not in ('复旦大学')
5.关键字的模糊查询 关键字like
select device_id,age,university from user_profile where university like '北京%'
关于模糊查询的补充
_:匹配任意一个字符
%:匹配0个或者多个字符
[ ]:匹配[ ] 中的任意一个字符
[^ ]:不匹配中的任意一个字符
eg1:查询学生表中姓‘张’的学生的详细信息。
SELECT * FROM 学生表 WHERE 姓名 LIKE ‘张%’
eg2:查询学生表中姓‘张’、姓‘李’和姓‘刘’的学生的情况。
SELECT * FROM 学生表 WHERE 姓名 LIKE '[张李刘]%’
eg3:查询学生表表中名字的第2个字为“小”或“大”的学生的姓名和学号。
SELECT 姓名,学号 FROM 学生表 WHERE 姓名 LIKE '_[小大]%'
eg4:查询学生表中所有不姓“刘”的学生。
SELECT 姓名 FROM 学生 WHERE 姓名 NOT LIKE '刘%’
eg5:从学生表表中查询学号的最后一位不是2、3、5的学生信息。
SELECT * FROM 学生表 WHERE 学号 LIKE '%[^235]'
因为%可以匹配一位或者多位,[^ ]表示不匹配