原文:SQL中条件放在on后与where后的区别

SQL中on条件与where条件的区别 数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。 在使用left jion时,on和where条件的区别如下: on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。 where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义 必须返回 ...

2014-01-17 16:12 2 8446 推荐指数:

查看详情

SQL 查询条件放在LEFT OUTER JOIN 的ON语句放在WHERE区别

这两种条件放置的位置不同很容易让人造成混淆,以致经常查询出莫名其妙的结果出来,特别是副本的条件与主表不匹配时,下面以A,B表为例简单说下我的理解。 首先要明白的是: 跟在ON 后面的条件是对参与左联接的数据进行筛选,即在左联接之前起作用。 跟在WHERE条件是对左联接得到的结果集进行筛选 ...

Wed Mar 12 19:32:00 CST 2014 1 6180
SQL 查询条件放在LEFT OUTER JOIN 的ON语句放在WHERE区别

这两种条件放置的位置不同很容易让人造成混淆,以致经常查询出莫名其妙的结果出来,特别是副本的条件与主表不匹配时,下面以A,B表为例简单说下我的理解。 首先要明白的是: 跟在ON 后面的条件是对参与左联接的数据进行筛选,即在左联接之前起作用。 跟在WHERE ...

Sun Jan 01 00:29:00 CST 2017 0 2594
SQLjoin连接查询时条件放在onwhere区别

数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。 在使用left jion时,on和where条件区别如下: 1、 on条件是在生成临时表时使用的条件,它不管on条件是否为真,都会返回左边表的记录。 2、where条件 ...

Sat Jun 22 04:05:00 CST 2019 0 6227
Decode放在where条件的新用法

今天遇到一种特殊情况的查询,在查询某表时,要通过判断其中一个字段的值再用其他字段作为条件查询,比如有3个字段 columnA,columnBm,columnC,columnA的值由两个——分别是0和1,如果是0,那么我的where条件就是columnB=***,如果是1,where条件则是 ...

Thu Feb 12 03:04:00 CST 2015 0 4943
MySQL条件放在where后面与放在on后面的区别

假设有两种表:test_on_position表和address表,address表存放地址,test_on_position存放会员及其常用的地址,数据如下: address表: test_on_position表: 1. left join 条件where后面 运行 ...

Sat Aug 25 03:42:00 CST 2018 0 6231
SQLSQLon条件where条件区别

#前言   数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。   在使用left jion时,on和where条件区别如下:   1、on条件是在生成临时表时使用的条件,它不管on条件是否为真,都会返回左边表的记录 ...

Sun Sep 09 00:15:00 CST 2018 0 1224
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM