如果你通过编程的方式做,那更简单了。先一个临时表,把另一个库里的表存进来,然后用一个SELECT就搞定。
第一种方法(穷举法)void findSame(Type A[], TypeB[], Type C[]){//设数组C = A + B(当然C没必要)for(int i = 0i <C.size()++i){for(int j = i + 1j <C.size()++j) { compare() } } 时间复杂度:n^2(n^2/2 - n /2)}第二种方法void findSame(Type A[], Type B[], Type C[]){ sort(A) sort(B) for(int i = 0i <A.size()++i) { //先在已排序的A中找相同记录(略) //再在已排序的B中找相同记录(二分查找) } 时间复杂度nlogn(mlogm + nlogn + m + mlogn)应该比在一个数组中快,在一个数组时间复杂度:(m + n)logn + (m + n) 那为了更快,可再划分更多的小数组,使得排序的时间降下来}例如:学生的数据库,一个老师教一个班学生表里面有个教师ID字段,这个字段和老师表的教师ID字段就是多对一的关系,反过来就是一对多的关系,
Access:在有这两个表的数据库中,点击工具栏上的关系按钮,把老师表的教师ID字段拖拽到学生表的教师ID字段,并选择“实施参照完整性”这样关系就建立完成了。在老师表教师ID字段旁边会出现1,学生表教师ID字段旁边会出现无穷大,表示一对多关系
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)