SQL 笔记(二)

这篇笔记涵盖了SQL的基本操作,包括如何创建表并设置主键和外键,修改表以添加新属性,创建索引以优化查询,以及各种查询技巧,如按条件筛选、排序、分组和聚合函数的使用。还涉及到了视图的创建和删除,以及不同类型的子查询应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、创建表

CREATE TABLE SC(Sno int,Qno int,primary key(Sno),foreign key(Qno) references Course(Cno));

CREATE TABLE SC(Sno int primary key,Qno int,foreign key(Qno) references Course(Cno));
这里声明Sno为主键,声明Qno为外键,并指定Qno关联的是Course表中的Cno项,其中Cno必须为Course表中的主键。

CREATE TABLE Person(id int auto_increment, name varchar(50), age int, address varchar(200), birthday varchar(50), primary key(id));

这里设置主键id为自动递增(从1开始)。

2、修改表

Alter table tablename add sex char(3);

为tablename表增加sex属性,为char(3)类型。

3、创建索引

create index index_name on students(Sage);
# 为students表的Sage属性创建索引,索引名为index_name。
CREATE INDEX indexName ON mytable(username(length)); 
# 前缀索引,只对username的前length个字符建索引
create index index_name on students(Sage,Sno);
//为students表的Sage和Sno属性创建索引。
create unique index index_name on students(Sno);
//创建唯一索引
create cluster index index_name on students(Sno);
//创建聚簇索引
drop index index_name;
//删除名为index_name的索引。

4、查询

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述
姓刘的同学的名字。
这里写图片描述
姓刘,且为两个字。
这里写图片描述
asc为升序,desc为降序。
这里写图片描述
1、查询学生总数。 2、SC表中不同的学号数。
这里写图片描述
选修课程1的学生的平均分。
这里写图片描述
求每门课的课号及选课人数
group by 将查询结果按一列或多列值分组,目的是将“集函数”作用到组上。

这里写图片描述
等值查询
这里写图片描述
自身连接

这里写图片描述

这里写图片描述
三表连接查询,当属性不冲突时,可不指定表名
这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

不相关子查询比相关子查询性能好

这里写图片描述
定义视图
这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述
删除视图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值