2021-06-01

今天,我们有了个新的交作业方法,于是这就是我今天的课后作业。
说一个概念:内数据查询,当信息的来源是多张表,要对这些表查询时,我们需要对多张表进行连接,本质是通过2内容个相同的字段进行连接连接2张表。


交插连接,也叫"笛卡尔连接或"叉乘”书上说用法是将2个表中的字段相乘,生成的结果很多.

然后是内连接查询的写法 select 查询内容 from 表1 join 表2 on 表1.列名1=表2.列名2 join 表3 on 表3.列名3=表2.列名2         

同样有一个其他的写法  :   select 查询内容 from 表1,表2 where 表1.列名1=表2.列名2 ,表名3.列名3=表名.列名3

        

我是用翻译的方法理解的 join是加入的意思,在这里可能就是链接的意思,表1join表2 那就是表一链接表2           on 是“在”的意思,我把这个写法翻译成“从由1表的列名1与2表的列名2合成的一个大表里查询...内容”  重点是on或where后面的语句 像条件,也类似2个表外键一样的关系。

接下来是我的课堂作业

数据库在百度云

https://pan.baidu.com/s/1F5Q-fw8HgjABINFIlEuPBQ 提取码:cG65   

商品和分类分别在两个不同的表

这题较为简单,直接套写法

SELECT goodsname 商品名,typename 类型 FROM type JOIN goods ON goods.TypeID=type.TypeID

可以很明显的看到是通过两个表的typeid链接起了2个表

 

 

 

这个是在链接的基础上加了分组

count(*)能够统计记录数量

SELECT typename 分类,COUNT(*) 数量 FROM goods JOIN type ON goods.TypeID=type.TypeID GROUP BY 分类

 

 

这题涉及到4个表,分别是 goods ordersdetail orders users                                                               需要查询的信息分布在这4个表中,由于这些表中有可以用于链接的列名,所以可以连接后再查询

这题有点绕,对于我这个新手来说,找到他们用于链接的列名实在是有点晃眼

总结 记好语法,然后找到能够用于链接2个表的列名,链接多个表类似于穿针引线,一个表至少与另一表有链接

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值