常用的SQL语句
一、简单查询语句 DQL
select
1.如何查看某个表中的所有字段
select * from 表名;从一个表中查询所有数据。如下图所示:
不看表中的数据,只看表的结构
desc 表名;
2.查询一个字段
(1)select 字段名 from 表名; ,如下图所示
缺点 :效率低,可读性差,实际开发中不建议
(2)select A,B,C,D,… from 表名;
3.查询多个字段
select 字段名,字段名 from 表名; , 如下图所示:
4.给查询的列起别名
(1)select 字段名 as 别名 from 表名; : 如下图所示
(2)注意 :只是将查询显示的列名显示为rrid,原表列名还是:rid。
select语句永远都不会进行修改操作,只负责查询。
(3)select rid rrid from t_role,select rid ‘r rid’ from t_role,:也可以起别名
(4)注意:在所有数据库中,字符串统一使用单引号括起来,单引号是标准。
(5)别名是中文的话,需要用单引号括起来
5.查询用户名并且给用户密码+1
select 用户名,密码+1 from 表名;,:如下所示
二、条件查询
select 字段名 from 表名 where 条件;
1.都有哪些条件
(1)between and 使用时必须遵循左小右大,且是闭区间,包含两端的值
(2)null的使用
(1)查询哪个用户的电话号码为空
select username from t_user where phonenumber is null;
(2)若查询电话号码不为空的情况下,就用is not null
(3)注意:数据库中的null代表的是什么都没有,不是一个值,所以不能用等号
(3)and的使用
(1)查询工资大于3000并且年龄小于30的员工姓名
select rolename from t_role where age<30 and salay>3000;
(2)or:的使用与and类似
(3)当 and 和 or 同时使用时:and的优先级比or高,所以可以考虑加括号
(4)in的使用
(1)查询在北京读书和上海读书的同学姓名
select username from student where city in(‘上海’,‘北京’);
(2)in表示的不是区间
(5)like的使用
(1)找出员工姓名中含有伟的员工姓名
select username from t_user where username like ‘%伟%’;
(2)找出姓名中有_的学生
select name from student where name like ‘%_%’;
这样是不可以的:select name from student where name like ‘%_%’;
三、排序(order by)
1.查询所有员工薪资并排序
(1)select name,salay from emplyee order by salay;:默认是升序
2.指定降序
select name,salay from emplyee order by salay desc;
3.指定升序
select name,salay from emplyee order by salay asc;
4.多个字段排序
(1)查询员工姓名和薪资,要求按照薪资升序,若薪资一样,再按照姓名升序排列
select name,salay from emplyee order by salay asc,name asc;
5.找出工资在2000到10000之间的员工信息,要求按照薪资降序排列
select name,salay from emplyee where salay between 2000 and 10000 order by salay desc;