sql语句_笔记
2022-05-14 15:33:41 76 举报
AI智能生成
SQL语句是用于操作关系型数据库的标准语言,它可以用来执行各种数据管理任务,如查询、插入、更新和删除。SQL语句通常由关键字、函数和操作数组成,按照一定的语法规则排列。例如,SELECT语句用于从数据库表中检索数据,INSERT语句用于向数据库表中插入新记录,UPDATE语句用于修改数据库表中的现有记录,DELETE语句用于删除数据库表中的记录。通过编写和执行SQL语句,用户可以方便地管理和操作数据库中的数据。
作者其他创作
大纲/内容
sql产生和发展
1.综合统一
2.高度非过程化
3.面向集合的操作方式
4.以同一种语法结构提供多种使用形式
5.语言简洁、易学易用
SQL特点
存储文件
外模式
基本表
模式
视图、部分基本表
内模式
支持关系数据库三级模式结构
本身独立存在的表
一个关系对应一个表
视图
SQL基本概念
sql概述
create database xx
alter database xx
drop database xx
use xx
定义数据库
create table xx
定义表
create schema xx authorization username
drop schema username
定义模式
定义视图
DBA建立,DBMS自动维护
drop index name
定义索引
数据定义功能
varchar\\char
int\\bigint\\smallint\\tinyint
decimal\umeric
date\\datetime\\time
blob\\clob
数据类型
<>必须
[]可选
{} | 或
约定符号
create
drop
alter...add
alter...drop
alter...alter
alter
操作方式
NULL/NOT NULL约束
UNIQUE约束
PRIMARY KEY
FOREIGN KEY约束
CHECK约束
default
约束
数据定义
select * from student
select name,2021-age birthday from student
select distinct sno from sc;
select * from student where ...
语句
between and
in
asc 升序
desc 降序
order by
group by的参数必须在select主句中出现(或者select中的为聚合函数)
group by
与group by配合使用
having
模糊查询,与_%搭配使用
like
and or
关键字
count
sum
avg
max,min
聚集函数
单表查询
select 表1.列1,表2.列2 from 表1表2 where
基本语句
从表1依次找到一个元组,与表二匹配
嵌套循环法
表1的第一个元组,从头开始扫描表2,顺序查找满足连接条件的元组,找到后就拼接起来。当遇到表2中第一条大于表1连接字段值的元组时,中止
排序合并法
对表2按连接字段建立索引。对表1中的每个元组,依次根据其连接字段值查询表2的索引
索引连接
连接操作的执行过程
SELECT Student.*,SC.*FROM Student,SCWHERE Student.Sno = SC.Sno;
等值连接
使用了比较运算符:>、<、>=、<=、!= 的连接
非等值连接
等值连接的一种特殊情况,把目标列中重复的属性列去掉。
自然连接
一个表与其自己进行连接,需要给表起别名以示区别
自身连接
left outer join
right outer join
外连接
where 包括多个条件
复合条件连接
连接查询
特点:查询块相互嵌套
子查询不能使用order by
in谓词子查询
any/all子查询
内层查询为空,false
内层查询非空,true
exists子查询
嵌套查询
select查询结果是元组的集合,可进行集合操作
并 union
交 intersect
差 except
集合查询
select */列名 from 表名
select语句
查询:select语句
属性列的顺序可与表定义中的顺序不一致
没有指定属性列
指定部分属性列
into
提供的值必须与INTO子句匹配
VALUES子句
INSERT INTO Dept_age(Sdept,Avg_age) SELECT Sdept,AVG(Sage) FROM Student GROUP BY Sdept;
例
注意:RDBMS在执行插入语句时会检查所插元组是否破坏表上已定义的完整性规则
insert into xx values()
插入数据
1. 删除某一个元组的值
2. 删除多个元组的值
3. 带子查询的删除语句
delete from where
删除数据
数据更新
数据控制
嵌入式sql
更新数据
指定修改方式
要修改的列
修改后取值
SET子句
指定要修改的组
缺省表示要修改表中的所有元组
WHERE子句
例:UPDATE SC SET Grade=0 WHERE 'CS'= (SELETE Sdept FROM Student WHERE Student.Sno = SC.Sno);
update xx set
关系数据库标准语言sql
0 条评论
回复 删除
下一页