MySQL 自学第十五章 联结表

 

1、联结

SQL最强大的功能之一就是能在数据检索查询的执行中联结(join)表

 

a、关系表

        关系表的设计就是要保证把信息分解成多个表,一类数据一个表。各表通过某些常用的值(即关系设计中的关系(relational) )互相关联。
 
 

b、使用联结

        联结是一种机制,用来在一条 SELECT语句中关联表,因此称之为联结

 

2、创建联结

SELECT vend_name, prod_name, prod_price FROM vendors, products WHERE vendors.vend_id = products.vend_id ORDER BY vend_name, prod_name ;

 

a、WHERE 子句的重要意义

由限定条件查询可以确保数据的准确,WHERE子句作为过滤条件,起到匹配限定的作用;

 

b、内部联结

目前为止所用的联结称为等值联结equijoin),它基于两个表之间的相等测试。这种联结也称为内部联结。

SELECT vend_name, prod_name, prod_price FROM vendors INNER JOIN products ON vendors.vend_id = products.vend_id ;

 

c、联结多个数据表

SELECT prod_name, vend_name, prod_price, quantity FROM orderitems, products, vendors WHERE products.vend_id = vendors.vend_id AND orderitems.prod_id = products.prod_id AND order_num = 20005;

下图展示了上面语句的查询过程;

 

综上所述,多层子查询嵌套与联结表的查询方式 可以根据不同的场景依据性能要求进行使用;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值