1.数据库当中最基本的单元是表:table
2.
任何一张表都有行和列:
行(row):被称为数据/记录。
列(column):被称为字段。
3.
SQL语句有很多,最好进行分门别类,这样更容易记忆。
分为:
DQL:
数据查询语言(凡是带有select关键字的都是查询语句)
select...
DML:
数据操作语言(凡是对表当中的数据进行增删改的都是DML)
insert delete update
insert 增
delete 删
update 改
这个主要是操作表中的数据data。
DDL:
数据定义语言
凡是带有create、drop、alter的都是DDL。
DDL主要操作的是表的结构。不是表中的数据。
create:新建,等同于增
drop:删除
alter:修改
这个增删改和DML不同,这个主要是对表结构进行操作。
TCL:
不是王牌电视。
是事务控制语言
包括:
事务提交:commit;
事务回滚:rollback;
DCL:
是数据控制语言。
例如:授权grant、撤销权限revoke....
计算员工
select ename,sal*12 from emp;//字段可以使用数学公式
条件查询
select
字段1,字段2,字段3
form
表名
where
条件;
<>也叫!=
前面就是显示该条件下的符合的字段
(wage>=2400 and wage <= 3000) == wage between 2400 and 3000;
数据库中的null是什么也没有,不是一个数值,所以不能用等号来衡量
如果是null的话=是不行的不能说
select ename from wagezong where wage is null;
and和or同时出现有优先级
select * from emp where sal > 2500 and bumen = 10 or bumen = 20;
select * from emp where sal > 2500 and (bumen = 10 or bumen = 20);
in / not in
查询工作岗位
in相当于多个or, in并不是区间而是具体的值
select * from emp where sal > 2500 and bumen in (10, 20);
并不是10~20都找出来,只是找出10和20的值,in后面的具体的数值
区间的话是between and
同理的not in 不在这几个数值的数据
like 模糊查询
%任意多个
_任意一个
select * from emp where ename like '%T';
select * from emp where ename like 'T%';
select * from emp where ename like '_T%';
select * from emp where ename like '__T%';
排序
select * from emp order by sal;升序
select * from emp order by sal desc;降序
多段排序:
select ename,sal from emp order by sal,ename;
跟着谁最近先排谁
根据字段的位置也可以排序
按照查询结果的第几列来排
比如select ename,sal from emp order by 2;
就是按照sal来排序