急急!在VF的sql查询语句当中,请问什么时候用where 连接两个表的关系,什么时候用inner join?
在VF的sql查询语句当中,请问什么时候用where连接两个表的关系,什么时候用innerjoin?...
在VF的sql查询语句当中,请问什么时候用where 连接两个表的关系,什么时候用inner join?
展开
展开全部
where相当于left join,
inner join,当你需要取两个表中链接外键的交集时使用。
inner join,当你需要取两个表中链接外键的交集时使用。
追问
还是不太明白,我参加二级vf的考试。看到有些机试的题目用where,有的用inner join。
我本来以为如果俩个表在同一个数据库里就用where,不在的话就要用inner join,后来题目做得多了,又感觉不完全是这样的。那还有个问题,什么时候该分组,什么时候又不用分组呢 ?还是写sql查询语句的时候
追答
看来你学习蛮认真的,
两者的相差细微,但结果差异明显。
inner join(等值连接) 只返回两个表中联结字段相等的行。
你的问题不是VF的范畴,而是针对SQL问题,只不过VF在查询时,使用标准的SQL语句。
给你个链接,自己在学习理解一下。
http://www.javaeye.com/topic/465807
你重点看inner join部分。
展开全部
大部分简单的连接时两个都能用,稍复杂且多张表连接时就要用join了,从性能上讲join比只在where中加条件连接两表要好的多,建议用join
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果用inner join 进行连接的化,连接条件用on;否则就用where进行连接;例如下面
select 仓库.仓库号,城市.面积,职工号.工资 from 仓库,职工 where 仓库.仓库号=职工.仓库号
select 仓库.仓库号,城市.面积,职工号.工资 from 仓库 inner join 职工 on 仓库.仓库号=职工.仓库号
其实是等价的
select 仓库.仓库号,城市.面积,职工号.工资 from 仓库,职工 where 仓库.仓库号=职工.仓库号
select 仓库.仓库号,城市.面积,职工号.工资 from 仓库 inner join 职工 on 仓库.仓库号=职工.仓库号
其实是等价的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询