??
select * from a inner join b on a.id=b.id

解决方案 »

  1.   

    select distinct A.* from A join B on A.ID=B.ID
      

  2.   

    --or
    select distinct A.* from A, B where A.ID=B.ID
      

  3.   

    怎么几位还在用select啊,这个被限制掉了,我们这里不能这样访问数据库.
    我目前肯定可以解决的方案有一种,就是先取出A中所有的表,然后在绑定事件中处理,每一行的值查询一下是否符合条件,不符合的隐藏,不过这样做显然很没效率.
    另外一个是设想,由于没有经验还没实现,就是取出B的数据集.然后在A的查询条件中设置id in (B数据集ID列的集合)....
      

  4.   

    你只说了限制子查询,并没有说限制不用select啊,你们怎么访问跟你们的业务有关,别人怎么知道捏?你得给出你们的接口访问条件才行啊
      

  5.   

    不好意思,可能是我顶楼的描述不太准确,请参看4楼,并且放出接口访问条件.基本上每个表都有如下接口:
    public System.Data.DataTable GetXXEntities(string condition)
            {
                try
                {
                    DataSet ds = null;
                    using (DataAccess da = new DataAccess())
                    {
                        ds = da.GetDatas("XX表", condition);
                    }                if (ds != null && ds.Tables.Count > 0)
                    {
                        return ds.Tables[0];
                    }
                    else
                    {
                        return null;
                    }
                }
    .......这个condition大致是接受where后的内容,但应该限制了select这类的.否则以我顶楼的需求我只要将访问A的conditon="id in(select id from B)就行了.