SQL多表联合查询(LEFT JOIN)条件差异

查询A:

select a.*,b.* into Bus605115_ON_Where_And --(642 行受影响)
from PositionN a left join szt b
on b.[fQCBH]=a.fBusNo
where fdealtime between fDInTime and fDInTimeN
and fbusno=605115

查询B:

select a.*,b.* into Bus605115_ON_And_Where --(835 行受影响)
from PositionN a left join szt b
on b.[fQCBH]=a.fBusNo
and fdealtime between fDInTime and fDInTimeN
where fbusno=605115

查询A、B的结果差异:

select * from Bus605115_ON_And_Where a
where not exists
(
select 1 from Bus605115_ON_Where_And b
where a.fGuid=b.fGuid
)
order by a.fDInTime

查询A中只有两表互相之间能关联的结果;

查询B中还包含未与b关联的结果,因此记录数比查询A多;

时间: 2024-08-29 14:37:29

SQL多表联合查询(LEFT JOIN)条件差异的相关文章

SQL多表联合查询

通过连接运算符可以实现多个表查询.连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志. 在关系数 据库管理系统中,表建立时各数据之间的关系不必确定,常把一个实体的所有信息存放在一个表中.当检索数据时,通过连接操作查询出存放在多个表中的不同实体 的信息.连接操作给用户带来很大的灵活性,他们可以在任何时候增加新的数据类型.为不同实体创建新的表,尔后通过连接进行查询. 连接可以在SELECT 语句的FROM子句或WHERE子句中建立,似是而非在FROM子句中指出连接时有助于将

sql两表联合查询

SELECT yt_fault_componentId FROM yt_fault_component a join yt_fault_assembly b on a.yt_fault_assembly=b.yt_fault_assemblyId where a.yt_code='' and b.yt_code=''

【Oracle】曾经的Oracle学习笔记(4-7)多表联合查询,子查询,动态条件查询

一.多表联合查询 二.子查询 三.动态条件查询 LESSON 4 Displaying Data from Multiple Tables-------------------------------------------------------- 查询s_emp表中最大的工资数,并且显示出这个最大工资数的员工名字 select last_name,max(salary)from s_emp; 多表查询 查询多张表的时候会产生笛卡尔积 为了防止笛卡尔积的产生,我们需要使用某些条件把两张表或多张

Yii2中多表关联查询(join、joinwith) with是不执行sql的

Yii2中多表关联查询(join.joinwith) 我们用实例来说明这一部分 表结构 现在有客户表.订单表.图书表.作者表, 客户表Customer (id customer_name) 订单表Order (id order_name customer_id book_id) 图书表 (id book_name author_id) 作者表 (id author_name) 模型定义 下面是这4个个模型的定义,只写出其中的关联 Customer class Customer extends \

SQL语句对于多表联合查询重复字段的特殊语法处理

SQL语句对于多表联合查询重复字段的特殊语法处理 原创 2016年01月13日 14:22:36 5309 [sql] view plain copy SELECT m.*,d_name,r_name,m2.m_account as shangji_account FROM Member m,Member m2,Role r,Depart d WHERE m.m_rid=r.id and m.m_did=d.id and m.m_shangji=m2.id ORDER BY m.id DESC

对于多表联合查询的一点理解

操作数据库时多表联合查询很常见.也知道常见联合查询的集中类型,内连接.外连接.全连接.自连接,外连接又分为左连接和右连接. 这些概念我一直都知道,但对于感念的理解并不透彻.对于不同类型的联合查询的结果数据集合没有清晰的区分.前两天,工作中又遇到的这样的问题,才开始弄明白. 内连接:传统写法:select a.*,b.* from a,b where a.column=b.column; 新式写法:select a.* from a inner join b on a.column=b.colum

Dynamic CRM 2013学习笔记(九)CrmFetchKit.js介绍:Fetchxml、多表联合查询, 批量更新

CrmFetchKit.js是一个跨浏览器的一个类库,允许通过JavaScript来执行fetch xml的查询,还可以实现批量更新,分页查询等.目前已支持Chrome 25, Firefox 19 和 IE9/10 . 它的最大优势是可以通过fetchxml 来查询,这样我们就可以实现真正的多表联合查询,虽然可以用OData终结点的$expand来进行多表的联合查询,但这种方式没办法过滤多表的条件,它只能过滤主表的条件. 下面来看下简单的多表查询的例子: 1.首先定义一个fetchxml: 1

获取多表联合查询的存储过程。

USE [NopV3.3Test] GO /****** Object: StoredProcedure [dbo].[GetPostList] Script Date: 06/18/2014 15:27:19 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: 于留洋 -- Create date: 2014/06

SharePoint 列表多表联合查询

在SharePoint平台二次开发中,我们有时需要涉及多表关联查询展示多列表中的不同字段信息:SharePoint和Sql数据表一样,也支持多表联合查询,但是不像Sql语句那样简单,有一定的局限性,需要使用SPQuery的Joins属性来完成. 联合查询的前提条件: 1.子列表必须采用查阅项进行关联主表: 下面,我们通过一个简单的例子,为大家演示一下如何使用SPQuery通过查阅项字段来进行两个列表的联合查询. 1.创建主列表,City是城市:子列Address,是地址,子列表新增加查阅项Cit