`

on,where

    博客分类:
  • sql
 
阅读更多

       数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。

      在使用left jion时,on和where条件的区别如下:

1、 on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。

2、where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义(必须返回左边表的记录)了,条件不为真的就全部过滤掉。

分享到:
评论

相关推荐

    深入解析on where谓词的区别

    在SQL查询中,`ON`和`WHERE`子句都是用于筛选数据的关键组成部分,但它们在不同的上下文中有着明确的分工。这篇博文“深入解析on where谓词的区别”旨在帮助我们理解这两个关键字在联接(JOIN)操作和简单查询中的...

    left_join_on_and与left_join_on_where的区别

    left_join_on_and与left_join_on_where的区别

    深入Oracle的left join中on和where的区别详解

    当我们涉及到LEFT JOIN时,可能会遇到使用ON和WHERE子句的情况,两者虽然都可以用来指定条件,但在语义上有所区别。 首先,ON子句是在生成联接结果集(临时表)时应用的条件。无论ON条件是否为真,都会返回左表的...

    sql语句join中on和where的区别

    ### SQL语句JOIN中ON和WHERE的区别 #### 引言 在SQL中,JOIN操作用于合并两个或多个表中的行。正确理解`ON`和`WHERE`子句的区别对于高效地编写查询至关重要。本文将详细解释这两者的不同,并通过具体的例子来加深...

    SQL中过滤条件放on和where中的区别详解

    在SQL查询中,`ON` 和 `WHERE` 都用于设置过滤条件,但它们在不同类型的查询中扮演的角色和产生的效果是有区别的。本篇文章将深入探讨`ON`和`WHERE`在`JOIN`操作中的具体差异,并通过实例来帮助理解。 首先,`JOIN`...

    sql中的left join及on、where条件关键字的区别详解

    在SQL查询中,JOIN操作是连接两个或多个...`ON`关键字定义了连接的条件,而`WHERE`则在连接后对结果集进行进一步的过滤。理解这三个关键字的区别和用法是SQL查询中的基本技能,对于处理复杂的数据关联问题至关重要。

    解析sql语句中left_join、inner_join中的on与where的区别

    ON和WHERE子句在JOIN操作中都有其特定的作用,但它们在逻辑上有所不同。 LEFT JOIN(左连接)保留了左表(在JOIN语句之前指定的表)的所有记录,即使在右表中没有匹配的记录。如果在ON子句中设置条件,这些条件将在...

    on与where、group by的用法

    ### SQL中ON条件与WHERE条件的区别 在进行数据库操作时,理解`ON`与`WHERE`条件的区别至关重要,尤其是在处理表连接(如`LEFT JOIN`、`INNER JOIN`等)时更为关键。这两种条件虽然都能用于限制结果集,但它们在执行...

    SQL中on条件与where条件的区别

    SQL中on条件与where条件的区别基础知识

    Android代码-GeoLog位置跟踪器

    GeoLog is a new kind of location tracker which changes tracking characteristics based on where you are and what you are doing. On foot, you travel slower than by car, and you may not want to gather ...

    SQL _join on 和where的执行顺序1

    总结,ON和WHERE子句在JOIN操作中的作用不同:ON定义了表间连接的基础,而WHERE则对最终结果进行过滤。对于LEFT JOIN、RIGHT JOIN和FULL JOIN,ON条件的过滤是在生成中间表时进行的,而WHERE是在中间表生成后应用。...

    sql查询左连接on与where的区别(2).pdf

    如果on条件和where条件相同,那么两者的结果可能看起来一样,但实际上on条件对连接过程有直接影响,而where条件只对最终结果有影响。 总结一下,Left Join中on与where的关键区别在于: 1. on的执行顺序在join之前,...

    SQL Server 基础学习 .docx

    SELECT emp_name FROM employee WHERE emp_no = (SELECT emp_no FROM works_on WHERE job = '项目经理' AND project_no = (SELECT project_no FROM project WHERE project_name = '学籍管理系统')); -- 方法二 ...

    Deep Learning with Azure

    Benefit from guidance on where to begin your AI adventure, and learn how the cloud provides you with all the tools, infrastructure, and services you need to do AI. What You’ll Learn Become familiar ...

    WMICodeCreator

    These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes...

    pkg-config-0.26.tar.gz

    o test test.c `pkg-config --libs --cflags glib-2.0` for instance, rather than hard-coding values on where to find glib (or other libraries). It is language-agnostic, so it can be used for defining the...

    SAS-FREQ n’ MEANS.pdf

    Procs FREQ and MEANS have been part of ...procedures and provide you with ideas on where they may be most useful in your organization and should expand your horizons with respect to these two procedures.

    Cyber Warfare

    This book is unique in that it provides the information in a manner that can be used to establish a strategic cybersecurity vision for ...designed to contribute to the national debate on where cyber is going.

    MySQL查询条件中放置on和where的区别分析

    在MySQL查询中,`ON` 和 `WHERE` 都是用来设置查询条件的,但它们在不同的语句结构中起着不同的作用。理解这两者之间的差异对于编写高效的SQL查询至关重要。 首先,`ON` 关键字主要用于`JOIN`操作,如`INNER JOIN`,...

Global site tag (gtag.js) - Google Analytics