select *
from  data where id in (select id from person)

解决方案 »

  1.   

    select *
    from  data where id in (select id from person)select *
    from  data where exists(select 1 from person where id=data.id)
      

  2.   

    应该是你的data表中的第二行的name有空格之类的。
    建议在data表中加一个外键P_ID与表person中的ID关联,就不会出现名字不匹配的现象了。
      

  3.   

    select * from [data] where id in (select id from person)
      

  4.   

    select *
    from  data where id in (select id from person)或
    select data.*
    from person, data
    where person.id= data.id
      

  5.   

    我用了一下teaism的
    select *
    from  data where id in (select id from person)
    结果是可以了,不过其实我想要的是
         0001,wang,hello,wang
         0002,wang,bad,wang
         0003,zhang,hello,zhang
    后面一个字段是表person中的名子,谢谢各位了
      

  6.   

    我用的是
    select data.*, person.name
    from person, data
    where person.name = data.name
    可是结果却是:
         0001,wang,hello,wang
         0003,zhang,hello,zhang
    请大家看看
      

  7.   

    select person.id*,data.name,data.word
    from person, data
    where person.id = data.id
      

  8.   

    CrazyFor(冬眠的鼹鼠) 
    说得很清楚了
      

  9.   

    没有,
    我想要的是
         0001,wang,hello,wang
         0002,wang,bad,wang
         0003,zhang,hello,zhang
    可结果却是:
         0001,wang,hello,wang
         0003,zhang,hello,zhang
      

  10.   

    select data.*
    from person, data
    where person.id = data.id
      

  11.   

    应该是你的data表中的第二行的name有空格之类的。
    建议在data表中加一个外键P_ID与表person中的ID关联,就不会出现名字不匹配的现象了。不是名子不匹配,是只有一条,我需要把所有的都找出来,它却只找最前面的一条
      

  12.   

    select *
    from  data where name in (select name from person)
    我是过了,可以实现
      

  13.   

    graywind(台风)
    我想要的是
         0001,wang,hello,wang
         0002,wang,bad,wang
         0003,zhang,hello,zhang
    可结果却是:
         0001,wang,hello,wang
         0003,zhang,hello,zhang
      

  14.   

    除非你的SQL语句还有聚合或top之类,要不然,就象你开头写的那样,不可能只取第一条记录的,你还是增加一个P_ID字段来关联吧。
      

  15.   

    select *
    from  data where id in (select id from person)
      

  16.   

    select * from data where name in (select name from person)呵呵。
      

  17.   

    select * from data
    where data.name in (select distinct person.name from person)
      

  18.   

    select a.id,b.name,a.word from Data a inner join person b on a.name=b.name