Sql里的on能单独用吗? Sql里的on能单独用吗?还是只有left/right/inner join 的时候才可以用呢,有什么单独的含义吗on后面加条件和where后面加条件区别在哪里,求高手指教 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 on 是生成临时表时使用的条件where 是在临时表生成好后对临时表过滤的条件 on有很多地方能用 如创建数据库指定log,就会用 log on,创建触发器 指定表 create trigger xx on table--------- 至于 联接中的 on 和 where , 如果是 innerJoin内部联接,他们没有区别。 如果是外部联接,就会有点区别了比如说执行一个 left outer join ,步骤是1、对两张表做笛卡尔积,交叉联接2、用 on条件筛选,去掉一部份3、添加外部行,就是那些不符合条件的,因为left join是以左表为基,所以某些记录会添加回来,右表那部份则以null显示4,where条件筛选。所以where 条件筛选可能把那些 left join左基表的数据给去掉,就是那些右表为null的数据。但是如果把where中的条件写在on上,那这些记录就不会被筛选掉了 http://www.cnblogs.com/tuyile006/archive/2007/05/08/738651.html参考一下; on 是生成临时表时使用的条件where 是在临时表生成好后对临时表过滤的条件 where后面是条件 on 是以什么为链接 最好不要弄混 在asp.net中COOKIE过期的问题 DataList在数据操作后字体就会变得很大,这个问题如何解决? 紧急求助,ASP.NET自动捕获异常问题............................... 树形结构问题,求一个控件,希望提供方法。 控件事件的问题 一个非常奇怪的现象.求解! 关于 js onfocus 和 onblur 事件 在datagrid插入行号后的错误.高手帮帮忙.在线等 用ASP.NET如何连接*.dbf数据库 如何将字符串转化为DateTime 网站发布以后,在导出到excel时,弹出登陆框。 奇怪的逗号,
where 是在临时表生成好后对临时表过滤的条件
---------
至于 联接中的 on 和 where , 如果是 innerJoin内部联接,他们没有区别。 如果是外部联接,就会有点区别了
比如说执行一个 left outer join ,
步骤是
1、对两张表做笛卡尔积,交叉联接
2、用 on条件筛选,去掉一部份
3、添加外部行,就是那些不符合条件的,因为left join是以左表为基,所以某些记录会添加回来,右表那部份则以null显示
4,where条件筛选。所以where 条件筛选可能把那些 left join左基表的数据给去掉,就是那些右表为null的数据。但是如果把where中的条件写在on上,那这些记录就不会被筛选掉了
参考一下;
where 是在临时表生成好后对临时表过滤的条件
最好不要弄混