测试表数据如下:

关于联合查询与子查询的查询结果不同点_随笔

关于联合查询与子查询的查询结果不同点_随笔

sql:

select * from zhubiaofushu where id in 
(select fid from zhubiao)

select  * from zhubiao t inner join zhubiaofushu t1
on t.fid= t1.id

select  t1.* from zhubiao t inner join zhubiaofushu t1
on t.fid= t1.id

select distinct t1.* from zhubiao t inner join zhubiaofushu t1
on t.fid= t1.id
order by t1.id asc

按以上顺序执行结果如下:

ID                   NAME                 
-------------------- -------------------- 
1                    1班                  
2                    2班                  

2 rows selected

ID                   NAME                 FID                  ID                   NAME                 
-------------------- -------------------- -------------------- -------------------- -------------------- 
1                    小王                 1                    1                    1班                  
2                    小唐                 1                    1                    1班                  
3                    小宇                 2                    2                    2班                  
4                    小丹                 2                    2                    2班                  

4 rows selected

ID                   NAME                 
-------------------- -------------------- 
1                    1班                  
1                    1班                  
2                    2班                  
2                    2班                  

4 rows selected

ID                   NAME                 
-------------------- -------------------- 
1                    1班                  
2                    2班                  

2 rows selected
View Code

相关文章: