2020-8-16 JavaWebDay_03

多表查询:

笛卡尔积:

由两个集合A,B,取这两个集合的所有组成情况;

要完成多表查询,需要先消除无用的数据;

多表查询的分类:

1.内连接查询;

2.外连接查询;

3.子查询;

内连接查询:

隐式内连接:
语法:

select 字段列表 from 表名列表 where 条件;

使用where条件消除无用的数据;
显示内连接:
语法;select 字段列表 from 表名1 [inner] join 表名2 on 条件;
内连接查询需要确定的前提:
1.从那些表中查询数据;

2.条件是什么;

3.查询哪些字段;

外连接查询:

左外连接:
select 字段列表 from 表名1 left [outer] join 表名2 on 条件;

查询的是左表所有数据以及交集部分;
右外连接:
select 字段列表 from 表名1 right [outer] join 表名2 on 条件;

查询的是右表所有数据以及交集部分;

子查询:

概念:
查询中嵌套查询,称嵌套查询为子查询;
不同情况:
1.子查询的结果都是单行单列的,子查询可以作为条件,使用运算符判断;

2.子查询结果是多行单列的,子查询可以作为条件判断,使用运算符 in{};

3.子查询的结果是多行多列的,子查询可以作为一张虚拟表参与查询;

例: select 字段列表 from 表名列表,子查询 where 条件;

事务:

概念:

如果一个包含多个步骤的业务操作,被事务管理,那么这些操作要么同时成功,要么同时失败;

操作:

1.开启事务: start transation;

2.回滚:rollbacl;

3.提交: commit;

MySQL里的事务:

MySQL里事务默认自动提交;

事务提交的两种方式:

1.自动提交:

MySQL默认自动提交,一条DML语句自动提交一次事务;

2.手动提交:

需要先开启事务,再提交;

修改事务的默认提交方式:

1.查看事务默认提交方式:select @@autocommit(0代表手动提交,1代表自动提交);

2.修改默认提交方式:set @@autocommit=0(1);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值