数据库学习笔记

  1. where子句用来筛选from子句中指定的数据源所产生的行数据,group by子句用来对经where子句筛选出来后的结果数据进行分组,having 子句用来对分组后的结果数据再进行筛选。建议将所有应该在分组之前进行的搜索条件放在where子句中而不是having子句中,这样会减少参与分组的数据行执行效率高。
  2. 内连接 select * from student inner join sc on student.sno = sc.sno
  3. 为表取别名 from student as s ,当为表取了别名以后,在查询语句的其他地方,所有用到表名的地方都要使用别名
  4. 每链接一个表就要添加一个join子句。
  5. 自连接 select c1.name , c1.credit from course c1 join course c2 on c1.credit=c2.credit where c2.name = '数据结构'
  6. 使用子查询进行比较测试select sno,grade, from sc where cno = 'c005' and grade > ( select avg(grade) from sc where cno = 'c05' )
  7. 将查询结果保存到新表中:select sdept ,count(*) as 人数 into dept_cnt from student group by sdept
  8. select s.sno 学号,sname 姓名,
    case sdept
    when '计算机系' then 'cs'
    when '信息系' then 'im'
    when '数学系' then 'ma'
    end as 所在系,grade 成绩 from student
  9. select s.sno 学号,sname 姓名,
    case
    when sdept='计算机系' then 'cs'
    when sdept='信息系' then 'im'
    end as 所在系 from student
  10. update sc set grade = grade +
    case dept
    when '数学系' then 10
    when '信息系' then 5
    else 0
    end from student
  11. 查询结果的并、交、差运算
    并
    select 语句1
    union all
    select 语句2
    union all
    select 语句3
    交
    select 语句1
    intersect
    select 语句2
    intersect
    select 语句3
    差
    select 语句1
    except
    select 语句2
    except
    select 语句3
  12. 当查询语句的目标列中包含聚合函数时,若没有分组子句,则目标函数中只能写聚合函数,而不能再写其他列名,若包含分组子句,则在查询的目标列中除了可以写聚合函数外,只能写分组依据列。
  13. 对行的过滤条件一般用where子句实现,对组的过滤条件用having子句实现
  14. 不能将对统计后的结果进行筛选的条件写在where子句中,应该写在having子句后
  15. 能否通过视图修改数据的基本原则:如果这个操作能够最终落实到基本表中上,成为基本表的基本操作,则可以进行,否则就不能通过视图修改数据。
  16. 如果被删除的视图是其他视图的数据源,那么删除该视图则其导出视图无法再使用,如果定义视图的基本表被删除了,则视图将无法使用。
  17. 视图一定程度上提供了数据的逻辑独立性,因为它对应的是数据库的外模式,当数据库的表结构变了,但应用程序可以不必修改,新建的视图保证了用户原来的关系,使用户的外模式未发生改变。
  18. 标准数据仓库,数据集市,多层数据仓库,联合式数据仓库
相关推荐
野生数据人1 分钟前
ES DSL 转 SQL 速查表:20 条子句对照 + 一条能直接跑的改写示例
大数据·数据库
野生数据人2 分钟前
采集链路改投 Doris 速查手册:三条路径对照、output 配置项清单、报错处理表
大数据·数据库
Xudde.8 分钟前
PwnLab: init 靶机渗透测试(Vulnhub Writeup)
笔记·学习·安全·web安全
2402_8462957712 分钟前
eDNA常用的基因片段
笔记
救救孩子把15 分钟前
AI面试八股文-07_6-向量数据库索引详解
数据库·人工智能·面试·向量数据库·hnsw
我命由我1234520 分钟前
Function Calling 模型
人工智能·python·学习·ai·学习方法·ai编程·ai写作
别动我齐刘海40 分钟前
实时控制学习2
linux·c++·人工智能·学习·算法
李白客1 小时前
国产数据库"实际用户增长"怎么核验?先定口径,再谈第一
数据库
AI视觉网奇1 小时前
3Dconnexion 按照笔记
笔记
海海不掉头发1 小时前
软件开发方法第七周笔记_CSDN博客
人工智能·笔记·学习·软件工程