二十四.Sql server多表查询

到这里我想大家已经掌握了sql server的基本知识,但是真正在企业中仅仅掌握这些知识还是不够的,这一节将讲解一下多表查询,如果要查询的数据置于两个及两个以上的表中,该如何办呢?

假如每个表都有超过1000条数据,如果有三个表,如果我们直接去查询的话,也许可以达到目的,但是这里我想告诉大家的是,直接查询会造成笛卡儿积非常大(这里的三个表,每个表数据都大于1000,所以直接查询的话它的笛卡儿积就大于1000的立方),所以查询时尽量少用直接查询。

有人会问了,那用什么方法既可以达到目的,又可以避免笛卡尔积不至于过大呢?

当我们使用关联查询就可以解决这个问题,其实在实际查询中,大家肯定都已经使用了关联查询,那什么是关联查询呢?

关联查询即是将各表中相关联的数据提取出来进行查询,有了它,在多表查询中我们就可以节省不少查询时间和内存了。

假如我们有以下两个表:

tb_Teachers_info

tb_City_info

假如我们要查询出两个表中来China的教师的TeachersName 和City

SQL     语句

 

select  t.TeachersName,t.Cityfrom tb_Teachers_info t, tb_City_info c

    where  t.TeachersName=c.TeachersName;


输出结果:



下一节、Sql  server中join的使用方法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值