1. 数据库
数据库是按照数据结构组织,存储和管理数据的仓库,而现在又转变成用户所需要的各种数据管理方式。
2. DBMS(数据库管理系统)
由存储模型可将数据库划分为关系型数据库和非关系型数据库。
关系型数据库是建立在关系模型基础上的数据库,借助于集合代数等数学概念来处理数据库中的数据。关系模型就是二维表格模型,关系型数据库就是由二维表及其之间联系所组成的数据组织
3. SQL语言
分类 | 命令 |
DDL | create--创建;drop--删除;alter--修改;rename--重命名;truncate--截断 |
DML | insert-插入;delete-删除;update;select |
DCL | grant--授权;revoke--回收权利;commit--提交事务;rollbake--回滚事务 |
4. SELECT
解析步骤:from -> where -> select -> order by
select distinct *|字段|表达式 as 别名 from 表 表别名
select distinct deptno from emp; --去重
select deptno,dname,loc from dept; --查询部门的所有信息
select ename as "雇员 姓名" from emp; -- as:表别名不能用;" ": 原样输出,区分大小写
select ename||'a'||'-->' info from emp; -- 字符串拼接用 ||
伪列:(构建虚拟的列) select empno, 1*2 as count,'cmj' as name,deptno from emp;
虚表:(计算表达式,显示单条的值) select 1+1 from dual;
Null :null 遇到数字参与运算的结果为 null,遇到字符串为空串
nvl内置函数,判断是否为null,如果为空,取默认值0,否则取字段实际值 select
like :模糊查询 %(0或者以上) _(一个字符)
escape('单个字符'):将该字符转换为转义字符
集合操作 :Union(去重)、Union All(不去重)、Intersect(找出重复)、Minus(减去重复)
exists条件为true,存在记录则返回结果,后续不再继续 比较查询,与查询的字段无关,与记录有关
5. 函数
5.1 单行函数
sysdate/current_date 以date类型返回当前的日期add_months(d,x) 返回加上x月后的日期d的值LAST_DAY(d) 返回的所在月份的最后一天months_between(date1,date2) 返回date1和date2之间月的数目next_day(sysdate,星期一) 下一个星期一
5.1.1 转换函数
to_date(c,m) -> 字符串以指定格式转换为日期to_char(d,m) -> 日期以指定格式转换为字符串
5.2 多行函数
count :统计记录数 count() -->* 或一个列名max min: 最大值 最小值sum:求和avg:平均值
注意:
1. 组函数仅在选择列表和Having子句中有效
2. 出现组函数,select 只能有组函数或分组字段
说明:
组信息 与单条记录不能同时查询
组函数 不能用在 where中,能使用的地方 select having
null 不参与运算