SQL(Structured Query Language)结构化查询语言
4.1SQL语言概述
SQL语言是操作关系数据库的标准语言,是一种高级的非过程化编程语言。
1.1SQL语言的发展过程
1.2SQL语言的特点
- 一体化
- 高度非过程化
- 面向集合的操作方式
- 提供多种方式使用
- 语言简洁
1.3SQL语言的功能
数据定义(DDL)CREATE、DROP、ALTER
数据查询(DQL)SELECT
数据操纵(DML)INSERT、UPDATE、DELETE
数据控制(DCL)GRANT、REVOKE、DENY
4.2SQL支持的数据类型
2.1数值型 精确数字、近似数字
2.2日期时间型
2.3字符串型 普通字符编码串、统一字符编码串、二进制串
2.4其他类型
4.3数据定义功能
3.1数据库的定义
1.数据库创建
create database 数据库名
2.数据库修改
alter database 数据库名
3.数据库删除
drop database 数据库名
3.2架构的定义
1.架构创建
create schema 架构名
2.架构修改
alter schema 架构名
3.架构删除
drop schema 架构名
3.3表的定义
1.表的创建
create table 表名(列名 数据类型 列级完整性约束,……,【表级完整性约束】)
列级完整性约束:完整性约束只涉及表中的一个列
表级完整性约束:涉及表中多个属性列的约束
约束关键字
主键 primary key
外键 foreign key 列名 references 外表名
唯一值 unique
默认值 default
范围 check(逻辑表达式)
空 not null
2.表的修改
alter table 表名
alter column 列名 新数据类型
add 列名 数据类型 约束
drop column 列名
add constraint 约束名
drop 约束名
3.表的删除
drop table 表名
4.4数据查询功能
4.1单表查询
select 列 from 表名
1、选择列
查询指定的列
查询全部列 *
查询表中没有的列 表达式,常量或者函数
2.选择行
查询满足条件的元组
- 比较 = > >= <= < <> !=
- 确定范围 betweent ... and 、not between ... and
- 确定集合 in 、not in
- 字符匹配 like
- 空值 is null
- 逻辑条件 and or
对查询结果排序
order by ASC|DESC
使用聚合函数进行统计
- count()
- sum()
- avg()
- max()
- min()
对数据进行分组
group by [having 条件]
4.3多表连接查询
1.内连接
2.自连接