SQLSERVER不带JOIN的语句与带JOIN语句的区别

//1.连接两个表查询
SELECT * FROM table1,table2
//2.连接两个表查询
SELECT  * FROM table1 join table2 on table1.id=table2.id

1.第一个连接查询的结果是一个笛卡尔积:也就是表1的行数乘以表2的行数(表一的每条记录都会与表二每条记录进行组合)
如:

表一       表二

1             a

2             b

3             c

生成之后的结果为:3x3条记录

1      a

1      b

1      c

2      a

2      b

2      c

3      a

3      b

3      c

2.第二个连接查询的结果为符合table1.id=table2.d_id 的记录,on 后面的语句相当于一个筛选条件。

表一                            表2

id     e_name          d_id           d_name

1      a                   1                 z

1      b                   2                 x

2      c

3      d

生成的查询结果为id等于d_id的记录

id      e_name     d_id      d_name

1       a              1          z

1       b              1          z

2       c               2          x

时间: 2024-11-07 04:06:18

SQLSERVER不带JOIN的语句与带JOIN语句的区别的相关文章

sqlserver查询所有表的行数的sql语句

原文:sqlserver查询所有表的行数的sql语句 select a.name, b.rows  from sysobjects a inner join sysindexes b on a.id = b.id where a.type = 'u'   and b.indid in (0, 1)order by a.name

SQL 基础:Select语句,各种join,union用法

一.基本的SELECT语句 1. “*”的注意事项:在SELECT语句中,用*来选取所有的列,这是一个应该抵制的习惯. 虽然节省了输入列名的时间,但是也意味着获得的数据比真正需要的数据多的多.相应的,也会降低应用程序的性能及网络性能. 良好的规则是只选所需. 2. join子句 join是用来定义如何从多个表中选取数据并组合成一个结果集. join必需是因为(1)我们所要获取的所有信息并不都在一个表中,或者(2)所要返回的信息都在一个表中,但是其上设置的条件信息却在另一个表中. join的共同点

图解MYSQL JOIN ON,SQL JOIN 详解,数据库sql join语句

对于SQL的Join,在学习起来可能是比较乱的.我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚.Coding Horror上有一篇文章(实在不清楚为什么Coding Horror也被墙)通过 文氏图 Venn diagrams 解释了SQL的Join.我觉得清楚易懂,转过来. 假设我们有两张表. Table A 是左边的表. Table B 是右边的表. 其各有四条记录,其中有两条记录是相同的,如下所示

2014-08-13 SQL语句之Left Join

今天是在吾索实习的第26天.这天在处理数据库数据的时候发现了一个不错的语句就是Left Join,即左连接.  其功能是:即使右表中没有匹配,也从左表返回所有的行.也就是说,显示的行数与左表一致,且当右表没有相应数据时,会用NULL或0补上.如下: 如此类推,右连接Right Join亦然. 2014-08-13 SQL语句之Left Join,布布扣,bubuko.com

LINQ to SQL语句(4)之Join

1.一对多关系(1 to Many): var q = from c in db.Customers from o in c.Orders where c.City == "London" select o; 语句描述:Customers与Orders是一对多关系.即Orders在Customers类中以 EntitySet形式出现.所以第二个from是从c.Orders而不是db.Orders里进行筛选 .这个例子在From子句中使用外键导航选择伦敦客户的所有订单. var q =

sql语句中left join、inner join中的on与where的区别

table a(id, type): id type ---------------------------------- 1 1 2 1 3 2 table b(id, class): id class --------------------------------- 1 1 2 2 sql语句1:select a.*, b.* from a left join b on a.id = b.id and a.type = 1; sql语句2:select a.*, b.* from a le

【迪士尼彩乐园】全套源码分享下载带急速赛车,后台带AB盘完美无错

[迪士尼彩乐园]全套源码分享下载带急速赛车,后台带AB盘完美无错 运行环境:php5.2+mysql 下载地址:http://fanshubbs.com/thread-245-1-1.html 源码类别:时时彩(彩票)现金网系统/两面盘 界面语言:简体中文 源码授权:无加密文件及认证授权,永久性可直接使用. 版本支持:PC/WAP网页版 编程语言:PHP 手机版独家对接的,完整无错! 此源码经过测试人员实测截图,保证100%和截图一致!!! 原文地址:https://www.cnblogs.co

《带你装B,带你飞》pytest成神之路2- 执行用例规则和pycharm运行的三种姿态

1. 简介 今天北京下的雪好大好美啊!!!哎呀,忘记拍照片了,自己想象一下吧.言归真传,今天还是开始pytest的学习和修炼,上一篇写完后群里反响各式各样的,几家欢乐几家愁,有的高兴说自己刚好要用到了,正好一起学习,有的不开心说自己接口还没有学完了,没关系的学习本来就不是一件一蹴而就的事情,需要日积月累,不要灰心.慢慢的来,多花点时间,争取赶上来就好了.嘿嘿!喝了宏哥的毒鸡汤是不是充满活力,感觉好多了.好,那就开始今天的学习吧!今天主要学习一下pytest的执行用例的规则. 2. 通过help帮

截图时如何显示鼠标指针,如何带鼠标指针截图,带鼠标指针截图的方法,怎么在截图时把鼠标指针一起截上

截图时如何显示鼠标指针,如何带鼠标指针截图,带鼠标指针截图的方法,怎么在截图时把鼠标指针一起截上 可以借助截图软件来实现, FSCapture(全称FastStone Capture),可是实现截图是带着鼠标指针 HprSnap.可是实现截图是带着鼠标指针 原文地址:https://www.cnblogs.com/GaoNa/p/12304366.html

4 java语句 4.2条件语句

大纲 4.1复合语句:不做重点 4.2条件语句 概述: 条件语句可以根据不同的条件执行不同的语句.条件语句包括if语句和switch多分支语句. 4.2.1  if 条件语句 if条件语句是一个重要的编程语句, 1.简单的if语句 格式:if(逻辑表达式){语句序列}; <例>int a=1; if(a==1)System.out.prnt("a的值是"+a);//只有一句输出时可以不带大括号,但最好都带上 2.if....else语句 else所表达的意思与if中的&qu