10-15唐兆文
笛卡尔乘积:每个表的每一行都和其他表的每一行组合 SELECT*FROM emp,dept;
等值连接查询:通常是存在逐渐外键关联关系的表之间连接进行的,使用“=”连接相关表
SELECT dept.danme,emp.ename from emp,dept where dept.deptno=emp.deptno;
自连接查询:表查询不仅可以多个表之间进行查询,也可以在一个表之中进行查询
内连接查询 使用关键字 inner jion关键字实现,inner可以省略。内连接查询时,体哦阿健on连接多个条件使用()将其括起来。
外连接:分为左连接和右连接值outer可以省略。外连接查询时,条件用on连接,多个条件使用()将其括起来;
左外连接表示以坐标为主表,右外连接表示以右表为主表。查询时将主表信息在从表中进行匹配。
单行子查询
select*from emp e where e.deptno=(select d.deptno from dept d where d.dname);
分列查询limit子句
select*from emp limit 0,2;
selectfrom table_name limit (页码—1)每页数量,每页数量;
distinct 使用关键字对查询的结果进行去重。去重必须结果集中每个列的值相同;
order by 用于对结果进行排序
聚合函数:
select sum(列) from table_name[其他子句]
求和 sum 求最大值 max 最小值 min 求平均值 avg count求数量
数据库的设计有五大实际范式。常用的有三大设计范式,第一范式 第二范式 第三范式 他们逐步未严格,满足第二范式,就必须先满足第一范式。满足第三范式就首先满足第二范式
范式有点:
范式化的数据库更新起来更加的快;
范式化之后只有很少的重复数据,只需要修改更少的数据;
范式化的表更小,可以在内存中直接执行;
很少的冗余数据,在查询时候需要更少的distinct后者group by语句
缺点:
范式的设计会产生更多的表;
在查询的时候惊颤需要很多的表连接查询,导致查询性能降低。
心得
在cmd中使用mysql语句还是有点麻烦。语句太多不经常用还是会忘记。
评论留言