sqlite 第四天

sqlite Join
sqlite的Join子句用于结合两个或多个数据库中的表的记录。Join是一种通过共同值来结合两个表中字段的手段。
SQL定义了三种主要的类型的连接:

		1. 交叉连接 - CROSS JOIN
		2. 内连接 - INNER JOIN
		3. 外连接 - OUTER JOIN

1. 交叉连接 - CROSS JOIN
交叉连接(CROSS JOIN)是把第一个表的第一行与第二个表的第一行进行匹配。如果两个输入表分别有x和y行,则结果表中有x * y行。由于交叉链接有可能产生非常大的表,使用时必须谨慎,只在适当的时候使用它们。

交叉连接语法:

	SELECT ID,NAME,AGE
	FROM Student 
	CROSS JOIN Class;

2.内连接 - INNER JOIN
内连接是根据连接的谓词结合两个表(table1和table2)的列值来创建一个新的结果表。查询会把table1中的每一行与table2中的每一行进行比较,找到所有满足连接的谓词大的行匹配对。当满足连接谓语是,A和B行的每一个匹配的列值会合并成一个结果行。

内连接语法:

select ID,Name,Age
FROM Student
INNER JOIN Name
ON Student.id=Name.studentId;

3. 外连接 - OUTER JOIN
外连接(OUYER JOIN)是内连接(INNER JOIN)的扩展。虽然SQL标准点皈依了三种类型的外连接:LEFT、RIGHT,FULL,但SQlite只支持左外连接(LEFT OUTER JOIN)
左外连接语法:

SELECT Id,Name,Age
FROM Class
LEFT OUTER JOIN Name
ON Student.id=Name.studentId;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值