比如dbgrid中数据是:姓名 年龄 ……
刘二  26  ……
王三  22   ……另一表为:
姓名 班级
刘二 一班 ……
想将两数据表中都有的人刘二是数据保留,去掉王三的就是。

解决方案 »

  1.   

    这个楼主可以过滤,或者删掉。
    删掉可能要考虑dbgrid的DataSet是什么,不然会把数据库的记录删掉的。最好还是过滤。
      

  2.   

    你说的去掉是什么意思?不显示,还是删除?
    要的是sql语句?select a.姓名, a.年龄 
    from 表1 a
    inner join 表2 b on (a.姓名 = b.姓名) delete from 表1 a
    where not exists
    {
      select 1 from 表2 b where a.姓名= b.姓名
    }
      

  3.   

    我想还是用语句过滤吧,select * from 表1 where id in (select id from 表2) 这样过滤出两个表都有的数据。不知道楼主是不是这个意思。
      

  4.   

    是啊,如果只是不显示就更简单了select 姓名,年龄 from 表1  where a.姓名  in (select 姓名 from 表2)