求教大神,选出t1表a列和t2表a相同的数据的sql语句,我这样写对不对?
问题描述:
求教大神,选出t1表a列和t2表a相同的数据的sql语句,我这样写对不对?
select t1.a from t1,t2 where t1.a=t2.a,这样写好像不对.假如t1表a列有1个2,t2表a列有3个2,就会选出3个2来.我的本意是选出1个2.求教一个简捷的方法
答
select distinct t1.a from t1,t2 where t1.a=t2.a这样不对,如果t1.a中有重复的数据,我只选了一条。select t1.a from t1 where exists(select 1 from t2 wheret1.a=t2.a);