table1 
 name1  sex1table2 
 name2  sex2用到子查询
select name from table1 where name in(select name2 from table2)现在想得到table1和table2下的所有字段也就是说如何将table2里面的sex2也写出来就得用子查询

解决方案 »

  1.   

    你是说想得到table1和table2下的所有字段,那条件?说清楚一点。
      

  2.   

    子查询显示select name from table1 where name in(select name2 from table2)需显示table2下面满足条件的sex2也就是说如何让子查询中返回满足条件的其他字段
      

  3.   

    你是不是想说凡是table2中的name2在table1中,就把table2中的sex2查询出来。
      

  4.   

    select t1.name, t2.sex from table1 t1 where name in(select name2 from table2 t2)手头测不了,不知道行不行
      

  5.   

    select a.name1,a.sex1,b.name2,a.sex2
    from  
    table1 a, table2 b
    where
    a.name1 = b.name2
      

  6.   

    select t1.name, t2.sex from table1 t1,table2 t2 where name in(select name2 from table2)
      

  7.   


    这样找到的是全部的sex2吧  并不是满足条件的sex2
      

  8.   

    假如table1的名字name是1,2,4,5,table2的名字是3,5,所以你select name from table1 where name in(select name2 from table2)和select name2 from table2 where name2 in(select name from table)查询的结果是一样。我给你的查询是select sex2 from table2 where name2 in(select name from table)
      

  9.   

    嘿嘿  我要现实table1和table2里面的name1和name2
      

  10.   


    我修改一下。select t1.name,t2.sex2 from table1 t1,table2 t2 where t2.name2=t1.name,这样就行了。
      

  11.   


    select t1.name,t2.name2,t2.sex2 from table1 t1,table2 t2 where t2.name2=t1.name,这样应该可以满足你的需求了吧。
      

  12.   

     这么简单的问题、至于嘛 
    select t1.name,t1.sex from table1 t1 where t1.name in(select t2.name2 from table2 t2) and t1.sex in (select t3.sex from table2 t3)
      

  13.   

    你说的题目就是有问题的,把name1,name2,sex1,sex2放在一起有什么意义?而且只能查出满足name2的值在name1中都有,那样显示出来的结果不是一样的吗?select name1,sex1 from table1 where name in(select name2 from table2)
      

  14.   

    select t1.name1,t1.sex1,t2.sex2 from table1 t1,table2 t2 where t1.name1=t2.name2
    这样不就达到楼主想要的效果了吗?
      

  15.   

    select t1.name1, * from table1 , table2  where table1.name1=table2.name2
    这样就可以了嘛·
      

  16.   


    改一下  select table1.name1, * from table1 , table2 where table1.name1=table2.name2
      

  17.   


    select name, (select distinct b.sex2 from table2 b where b.name2 = a.name) as sex2 from table1 a where name in(select name2 from table2)
      

  18.   

    有这么复杂么?select * from table1 t1, table2 t2  where t1.name = t2.name2 
      

  19.   

    select * from table1 t1
    left join table2 t2
    on t1.name=t2.name