1. 连接查询是什么?
在MySQL数据查询当中,有时候我们需要的信息存储多个表当中,用单表查询来查询信息会使我们的工作量大大增加,这个时候就需要用到连接查询了,连接查询就是把多张表中我们所需要从中查询粗来将其汇成为一张表,从而减少我们的工作量。
2.我们学习连接查询的目的是什么?
连接查询能够让我们减少查询的次数,工作量,提高效率。
3.例如
这个题目的要求是要我们查询商品名和分类名
SELECT goodsname 商品名,typename 类型 FROM type JOIN goods ON goods.TypeID=type.TypeID;
其中goodsname 商品名,typename 类型 为该查询结果表中的列名
JOIN 表示连接哪个表
goods.TypeID=type.TypeID 表示在goods和type中TypeID为连接俩个表的的一个接口
查询结果如上图所示
示例2对我们要求从一表当中查询商品的数量,这就要求我们用聚合函数COUNT(*)进行数量的计数,后面并无变化。如:
SELECT typename 分类,COUNT(*) FROM goods JOIN type ON goods.TypeID=type.TypeID GROUP BY 分类;
查询结果如上图所示
我们将进行进一步深入探索
例如,这次我们将从四个表中查询5个属性,这就要求我们利用多表连接查询从不同表中查询数据
SELECT name 客户,receiptscode 日期,GoodsName 商品,quantity 数量,SalePrice 金额
FROM goods JOIN ordersdetail ON goods.GoodsID=ordersdetail.GoodsID JOIN orders ON orders.OrdersID=ordersdetail.OrdersID JOIN user ON orders.UserId=user.UserId
从结构上来看,其实并无太多变化,熟悉其语法便能套娃。
select fieldist from table1 join table2 on table1.columnl=table2.column2 join table3 on table2.columnl=table3.columnl
最后,让我们多加练习,熟悉连接查询将其和聚合函数封住查询可以实现很多复杂的查询需求。
再见