(04)joins-1th

2016-12-14  本文已影响0人  suhuanzhen

参考资料:http://www.w3schools.com/sql/sql_join.asp
参考资料:http://www.powerxing.com/sql-join/

我们切换到新的分支进行开发

git checkout -b joins-1th

数据表界面

right_join

使用right_join的话,我们可以看到把右边所有6条微博都取出来了。而用户则是取出微博对应的用户,所以赵六没有在结果页面。

用户right join微博,等价于微博left join用户,都是一样的,如下结果跟上例保持一致

outer join

如上,我们可以看到left_outer_join和right_outer_join与原来不写出outer的结果是一样的;outer关键字可写可不写。

full join与full outer join

rails还没见过需要full join的场景,这个以后碰到了再写

join

使用join的话,则是用户和微博有对应关系才放入结果集合。所以赵六没有对应的微博就没有出现在结果集合,id为5的微博没有对应的用户也没有出现在结果集。



因为join的原理是存在对应关系的才显示在结果集合中,所以用户去joins微博跟微博去joins用户都是一样的。

inner join

inner join的inner关键字在一般情况下是可以忽略的,所以inner join就是join,如下结果跟join的结果也是一样的

提交到git仓库

进入项目根目录

.../active_record_second#  git add .
git commit -m "joins-1th"
git push -u https://github.com/xiaohuacc/active_record_second.git joins-1th

合并到主分支

git checkout master
git merge joins-1th
上一篇下一篇

猜你喜欢

热点阅读