select * from table1,table2 where substr(table1.field1,1,3)  = table2.field2
ORACLE下测试通过,其他数据库中需找相应函数替换substr.

解决方案 »

  1.   

    谢谢 nightingstar(午.夜.星) 
    但是按你的方法,就不能直接修改field的值.
    1.能不能既关联,又可以修改其值?
    2.可不可以不用sql实现两个表(table1,table2)的连接?
    即记录指针在table1上,table2自动按照field1前三位跟field2关联?请高手指点!
      

  2.   

    可以加入一个TDbEdit控件dbedit1,其datafield属性设为table1的主键(primary key);
    在dbedit1的onChange事件中
    procedure TForm1.DBEdit1Change(Sender: TObject);
    begin
         table2.filtered := false;
         table2.fileter := 'field2 = ''' +  copy(table1.fieldbyname('field1').asstring,1,3) + '''';
         table2.filtered := true;
    end;
      

  3.   

    谢谢nightingstar(午.夜.星)
    你真是高手!