日期:2014-05-20  浏览次数:20671 次

关于表连接问题??
例如
select * from Table1 t1 inner join Table2 t2 on t1.name=t2.name

问题是:t2的匹配数据超过了t1的数据,我只想以table1为准,匹配和table2中name相同的数据,该怎么写了?

------解决方案--------------------
意思是
select * from Table1 t1 where t1.name in (select t2.name from Table2 group by t2.name)
?
------解决方案--------------------
select * from Table1 t1 left outer join Table2 t2 on t1.name=t2.name

------解决方案--------------------
select * from Table1 t1 left join Table2 t2 on t1.name=t2.name 这样以左边的表为准,左边表里有的才会有。
------解决方案--------------------
用左连接 left join on 可以实现你想要的功能
------解决方案--------------------
select * from Table1 t1 left join Table2 t2 on t1.name=t2.name

------解决方案--------------------
select * from Table1 t1 left join Table2 t2 on t1.name=t2.name