多表查询
1.cross join(交叉连接)不带where子句,它返回被连接的两个表的所有数据行的笛卡尔积,返回到结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数
2.inner join(内连接)将左表的所有数据分别与右表的每条数据进行连接组合,返回的结果为同时满足左右表连接条件的数据 //具备连接条件
select * from student inner join kecheng on student.kcid=kecheng.id;
//on后面的是连接条件,是筛选两个表中id相对应的数据
3.left join(左连接)将左表的所有数据分别与右表的每条数据进行连接组合,返回的结果除内链接的数据外,还有左表中不符合条件的数据,并在右表的相应列填上null值
4.right join(右连接)将右表中的所有数据分别与左表的每条数据进行连接组合,返回的结果除了内链接的数据外,还有右表中不符合条件的数据,并在左表相应的列中填上null值//sqlite不支持右连接,但可以交换两表的位置然后使用左连接方式
5.full join(全连接)全外连接就是将左表的所有数据分别与右表的每条数据进行连接组合,返回的结果除了内链接的数据外,还有两个表中不符合条件的数据并在左表或者右表的相应列中填上null值。
limit 分页
如果要取第4-5行数据:limit 2 offset 3;简写: limit 3,2
就是跳过三行,取两行