HQL中左连接,右连接,内连接
来源:互联网 发布:淘宝天龙助手脚本没了 编辑:程序博客网 时间:2024/06/03 13:03
最佳答案来自于这里:www.taotuike.cn
左连接:left join
如A left join B 即取出A表的所有数据,由on条件关联的B表数据,有则显示,没有则为空;
右连接:right join
如 A right join B 即取出B表的所有数据,由on条件关联的A表数据,有则显示,没有则为空;
所以:A left join B 与 B right join A 是一样的效果
内连接:inner join
A inner join B 表示A,B中同时都有的数据才取出来;
下面是做的一个例子哈:
表group_col:
表student_col:
下面这个图是用右连接给显示出来的:
select stu.*,gr.* from student_col stu
right join group_col gr on stu.college_id=gr.id
下面这个图是用左连接给显示出来的:
select stu.*,gr.* from student_col stu
left join group_col gr on stu.college_id=gr.id
内连接就不说了哈:都有数据才显示出来,你懂得撒;
下面介绍一特殊的例子:(没弄懂上面的,不要看下面这种哈,免得给弄晕了)
student_col表中的外键对应于group_col的主键:
select stu.*,gr.* from student_col stu
right join group_col gr on stu.college_id=gr.id and gr.id=1
前面right join 会查出所有的group_col里面的数据,
后面的on相当于条件语句,stu.college_id=gr.id 与gr.id=1需要求交集而得到的结果
当前面得到group_col里面的数据后,把gr.id与student_col中的所有college_id对比,有多少相等就把与student_col中的college_id相等的student_col数据给读出来,
后面又有个and gr.id=1条件,所以这里对gr.id与student_col中的所有college_id对比的时候,gr.id只能为1.因为and是求交集的;
显示如图:
select stu.*,gr.* from student_col stu
right join group_col gr on stu.college_id=gr.id where gr.id=1
下面这种与上面不同的是,where是在前面已经读出一些数据后,经过where条件来筛选。
最佳答案来自于这里:www.taotuike.cn
- HQL中左连接,右连接,内连接
- HQL中左连接,右连接,内连接
- HQL中左连接,右连接,内连接
- HQL中左连接,右连接,内连接
- HQL中左连接,右连接,内连接
- HQL中的内连接、左连接、右连接
- hibernate HQl中不存在左连接和右连接/内连接(这里指的Hql不是Sql)
- mysql数据库中实现内连接、左连接、右连接
- mysql数据库中实现内连接、左连接、右连接
- mysql中union,左连接,右连接,与内连接
- 左连接、右连接、内连接
- 左连接、右连接、内连接
- 左连接、右连接和内连接
- 左连接、右连接和内连接
- 内连接、左连接、右连接
- 内连接、左连接、右连接
- 左连接,右连接,内连接讲解
- 左连接、右连接、内连接、索引
- sqlite 触发器
- LeetCode 118 Search Insert Position
- vi编辑器之替换操作
- 用HSSFWorkbook来对excel进行读操作
- python 学习笔记——字典(dict)
- HQL中左连接,右连接,内连接
- java模拟分页功能
- DFA和NFA
- WPFConverter(值转换器)使用例子
- 【百度地图】 SDK v3.0.0 (二) 定位与结合方向传感器
- Internal Server Error,fileUploader上传成功后无法显示缩略图
- linux rpm 主要用法记录
- Android开发中这些小技巧你都知道吗?(一)
- uboot源码分析——start_armboot