多表查询sql语句举例(两表查询关联sql语句)
多表查询介绍
在实际的数据表设计中,我们经常需要将业务数据分散到多个表格中进行存储。如果要得到一份完整的数据报告,就需要从多个表中查询数据并将其合并。这种情况就需要使用多表查询。
内联联接
内联联接(INNER JOIN)就是在两个以上的表中查询符合特定条件的数据,常常使用“ON”关键字来连接表格中的字段,下面是一个内联联接的实例:
SELECT Orders.OrderID, Customers.CustomerName FROM Orders INNER JOIN Customers ON Orders.CustomerID=Customers.CustomerID;
在这个例子中,我们从“Orders”表中选择OrderID字段,从“Customers”表中选择CustomerName字段,并将两个表中的CustomerID字段配对。如果两个表中的CustomerID值相等,就运行这个查询并返回结果。
左联接
左联接(LEFT JOIN)是在一张表格中查询所有数据,同时将与该表关联的另一张表格中的符合条件的记录显示出来。下面是一个左联接的实例:
SELECT Customers.CustomerName, Orders.OrderID FROM Customers LEFT JOIN Orders ON Customers.CustomerID=Orders.CustomerID;
在这个例子中,我们从“Customers”表中选择CustomerName字段,从“Orders”表中选择OrderID字段,并将两个表中的CustomerID字段配对。但是与内联联接不同,左联接可以返回所有“Customers”表中的记录,即使在“Orders”表中没有与之对应的记录。
右联接
右联接(RIGHT JOIN),与左联接类似,它是在一张表格中查询所有数据,同时将与该表关联的另外一张表格中的符合条件的记录显示出来。但是与左联接不同的是,它返回的是右边表格的所有记录。下面是一个右联接的实例:
SELECT Customers.CustomerName, Orders.OrderID FROM Customers RIGHT JOIN Orders ON Customers.CustomerID=Orders.CustomerID;
在这个例子中,我们从“Customers”表中选择CustomerName字段,从“Orders”表中选择OrderID字段,并将两个表中的CustomerID字段配对。但是,与内联联接和左联接不同,右联接只返回所有“Orders”表中的记录,即使在“Customers”表中没有与之对应的记录。
如果您的问题还未解决可以联系站长付费协助。
有问题可以加入技术QQ群一起交流学习
本站vip会员 请加入无忧模板网 VIP群(50604020) PS:加入时备注用户名或昵称
普通注册会员或访客 请加入无忧模板网 技术交流群(50604130)
客服微信号:15898888535
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若内容侵犯了原著者的合法权益,可联系站长删除。