Hola,
lo que tenes que hacer es:
hacer la consulta que quieras SQL con el DBF.
El DBF te conviene(para que sea mas facil) enlazarlo a un controldata.
Luego de esa consulta tenes un determinado RecordCount.
Entonces haces:
if rDBF.RecordCount>0 then
rDBF.MoveFirst
do until rDBF.EOF
rMDB.AddNew
rMDB.Field("Campo1")=rDBF!campo1
rMDB.Field("Campo2")=rDBF!campo2
rMDB.Update
rDBF.MoveNext
loop
endif