数据库学习——查询、子查询、视图

1.基本操作

查询:select * from  表名

删除:

删除表:drop table [表名]

删除指定列:delete from [表名] where [条件]

更新:update [表名] set  [列名=表达式] [where + 条件]

增加:

增加一列: alert table [表名] add [列名]  [列属性]

2.关键字

count

cout(*)    统计元组个数

cout(列名)    统计一列中值的个数

sum(列名)    统计这一列的总和

avg(列名)    统计这一列的平均值

group by子句

group by子句将查询结果按某一列或多列的值分组,值相等的为一组

eg:select cno,count(*) from sc group by cno 

上面的语句就是将sc表中的  cno 取出,用聚集函数来计算求得每组的人数, 按cno的顺序排列。

having 关键字

having的作用是筛选,将group by子句查询出来的结果进行进一步的筛选。

eg:select cno,count(*) from sc group by cno having count(*)>3

只有满足元组个数大于3 的才会被筛选出来。

any 关键字

使用any关键字时必须要加上比较运算符

>any    大于子查询中的某个值

<any    小于子查询中的某个值

eg:select sage from student where sage<any ( select sage from student where sdept='cs' )

如果题目中包含   任意  字样 即使用any关键字 。即查询任意一个符合子查询的结果集。

如果题目中包含   所有  字样 即使用all关键字 。即查询所有符合子查询的结果集。

exists 关键字

使用exists关键字查询之后不返回其他数据,只产生逻辑值,true or false

not exists 关键字

和 exists关键字一样,不返回其他数据。

意为不存在于子查询中的集合。

3.子查询

相关子查询中,子查询的结果是父查询的来源。

不相关子查询中,子查询的条件不依赖于父查询。

4.连接查询

等值连接

非等值连接

自身连接

外连接

左外连接

右外连接

5.索引

MySql 中默认的BTREE类型的索引,也是我们大多数情况下用到的索引。

CREATE INDEX index_name ON 【表名】 ( 列名 (次序))        –修改表结构的方式添加索引

CREATE UNIQUE INDEX indexName ON【表名】 ( 列名 (次序))  –创建唯一索引

 

6.视图

视图中存放的是虚表,即不存在的表。视图中的表来源自原来的基本表,当原来的表发生变化,则当前的表也会发生变化。

创建视图

eg:select view st  as select  sno,sname from st where sdept='is';

建立信息专业学生的视图

with check potion

使用 with check potion 之后  会在进行操作时默认加上   with check potion 之后的条件。

查看视图

eg: select  * from [视图名]

更新视图

视图是虚表,所以对视图的更新要转化为对基本表的更新。

删除视图

drop view [视图名]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值