数据库学习笔记

  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. 标准数据仓库,数据集市,多层数据仓库,联合式数据仓库
相关推荐
StarPrayers.17 分钟前
损失函数(Loss Function)、反向传播(Backward Propagation)和优化器(Optimizer)学习笔记
人工智能·笔记·深度学习·学习
TDengine (老段)1 小时前
连接 TDengine 遇到报错 “failed to connect to server, reason: Connection refused” 怎么办?
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
明月5662 小时前
github开源笔记应用程序项目推荐-Joplin
笔记·开源·joplin·跨平台笔记应用
李慕婉学姐2 小时前
Springboot黄河文化科普网站5q37v(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
YuCaiH2 小时前
网络编程的基础知识
linux·笔记·嵌入式·网络通信
m0_689618282 小时前
突破亚微米光电子器件制造瓶颈!配体交换辅助打印技术实现全打印红外探测器
笔记·制造
Cabbage_acmer3 小时前
MySQL期中考试突击!
数据库·mysql
涤生z3 小时前
list.
开发语言·数据结构·c++·学习·算法·list
Lu Yao_3 小时前
Redis 缓存
数据库·redis·缓存
小桥流水人家哇3 小时前
性能测试单场景测试时,是设置并发读多个文件,还是设置不同的用户读不同的文件?
数据库·性能测试技巧