数据库

1.分组查询

-- 查询选修三门课以上的学生的学号
select Sno from SC group by Sno having count(*)>3;

2.修改表结构

-- 添加列
alter table 表名 add [column] 列名 数据类型 [完整性约束];
-- 删除列
alter table 表名 drop [column] 列名 [cascade|restrict];
-- 添加约束
alter table 表名 add constraint 完整性约束名;
-- 删除约束
alter table 表名 drop constraint 完整性约束名 [cascade|restrict];
-- 修改列的数据类型
alter table 表名 alter column 列名 数据类型;

3.等值连接

自身连接

-- 【例如】课程 course(Cno, Cname, Cpno, Ccridit),查询每一门课程的间接先修课(即先修课的先修课)。
select C1.Cno, C2.Cpno
from Course C1, Course C2
where C1.Cpno=C2.Cno;

外连接(把悬浮的元组保存在结果集中)

左外连接(只保留左边表的悬浮元组)

右外连接(只保留右边表的悬浮元组)

-- Sno
select Student.Sno, Sname, Ssex, Sage, Sdept, Cno, grade
from Student left outer join SC on(Student.Sno=SC.Sno);
-- 也可以使用using去掉结果中重复的元组
select Student.Sno, Sname, Ssex, Sage, Sdept, Cno, grade
from Student left outer join SC using(Sno);

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java一日一条

数据库性能优化之SQL语句优化

在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着...

402
来自专栏Kevin-ZhangCG

SQL优化总结之二

1472
来自专栏个人随笔

MySQL常用函数

聚合函数  统计和分析 数据  使用场景:会和分组结合使用 -- 一旦启用分组,只能获取组的信息,组中成员不能出现在select后 count() 查询某个字...

3277
来自专栏后端技术探索

分表查询统计的一个具体案例

问题描述 mysql数据库在数据量较大的情况下,对数据表进行水平分表,按照年份,如下:

431
来自专栏张狗蛋的技术之路

Mysql探索(一):B-Tree索引

MySQL是目前业界最为流行的关系型数据库之一,而索引的优化也是数据库性能优化的关键之一。所以,充分地了解MySQL索引有助于提升开发人员对MySQL数...

632
来自专栏Java技术栈

mysql查询优化explain命令详解

mysql查询优化的方法有很多种,explain是工作当中用的比较多的一种检查方式。explain翻译即解释,就是看mysql语句的查询解释计划,从解释计划我们...

3348
来自专栏Linyb极客之路

MySql查询性能优化

在访问数据库时,应该只请求需要的行和列。请求多余的行和列会消耗MySql服务器的CPU和内存资源,并增加网络开销。 例如在处理分页时,应该使用LIMIT限制My...

904
来自专栏Spark学习技巧

SparkSQL的两种UDAF的讲解

Spark的dataframe提供了通用的聚合方法,比如count(),countDistinct(),avg(),max(),min()等等。然而这些函数是针...

852
来自专栏后端技术探索

分表查询统计的一个具体案例

问题描述 mysql数据库在数据量较大的情况下,对数据表进行水平分表,按照年份,如下:

331
来自专栏JMCui

MySQL数据库规约.

一、建表规约 1、表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint(1 表示是, 0 表示否) 。 2、表...

2765

扫描关注云+社区