帮帮忙,如何匹配出两个数据库中匹配度最好前十组的数据? 20C

A库中有很多排101.12,208.32,210.11,338.91,428.54,620.10这样的数据
B库中有很多排101.10,210.00,428.55,529.06,620.11,720.11这样的数据
现在要找到A库中每排数据在B库最接近的排,请问怎么编呢?十分感谢!

2个回答

定义二维数组AA[n1][m]和BB[n1][m];
A库AA[n1][m] B库BB[n1][m]
double tmpErr,minErr;
int i,j,k;
int minSer[n1];
for(i=0; i<n1;i++)
{

  for(j=0; j<n2; j++)
        {    
             minErr = 20000.0;
                tmpErr = 0;
             for(k=0; k<m; k++)
                {
                    tmpErr += fabs(AA[i][k] - BB[j][k]);
                        if(tmpErr < minErr)
                        {
                           minErr = tmpErr;
                            minSer[i] = j;
                        }
                }
        }

}
程序最后查看一下minSer[数组就可以了。
不知道是不是这一个意思,还有B库是不是一维数组还是二维数组。

YanlongZhou
YanlongZhou A数据集: 101.10,210.00,428.55,_529.06_,620.11,_720.11_ 101.10,210.00,428.55,_529.06_,620.11,_720.11_ B数据集: [[1]] 101.12,_208.32_,210.11,_338.91_,428.54,620.10 101.12,_208.32_,210.11,_338.91_,428.54,620.10 [[2]] 101.12,_208.32_,210.11,_338.91_,428.54,620.10, _820.10_, _998.11_ 101.12,_208.32_,210.11,_338.91_,428.54,620.10,_ 820.10_, _998.11_ 是类似这样的两个数据集,斜体的是误差太大的干扰值,不做统计,只统计误差小于0.5的值的相似性,并选出A中每排在B中最相似的排。
一年多之前 回复

不清楚你用的是什么数据库 写了个sql的 其他数据库的话思想类似 不明白的可以加我QQ434317590
--获取A,B库所有数据一对一比较的绝对值
if OBJECT_ID('tempdb..#t1') is not NULL drop TABLE #t1
SELECT 列A,列B,abs(列A-列B) AS 比较列
INTO #t1
FROM A,B
ORDER BY abs(列A-列B)
--获取列A对应最小的比较值
if OBJECT_ID('tempdb..#t2') is not NULL drop TABLE #t2
SELECT 列A,min(比较列) AS 比较列
INTO #t2
FROM #t1
GROUP BY 列A
--根据列A和比较值匹配得到结果
SELECT a.列A,a.列B
FROM #t1 a,#t2 b
WHERE a.列A=b.列A AND a.比较列=b.比较列

qq_16962131
qq_16962131 回复YanlongZhou: 可以啊 SELECT 列A,min(比较列) AS 比较列 INTO #t2 FROM #t1 GROUP BY 列A 就是获取误差最小的值 直接联系我QQ吧 这里偶尔上来看看
一年多之前 回复
YanlongZhou
YanlongZhou A数据集: 101.10,210.00,428.55,_529.06_,620.11,_720.11_ 101.10,210.00,428.55,_529.06_,620.11,_720.11_ B数据集: [[1]] 101.12,_208.32_,210.11,_338.91_,428.54,620.10 101.12,_208.32_,210.11,_338.91_,428.54,620.10 [[2]] 101.12,_208.32_,210.11,_338.91_,428.54,620.10, _820.10_, _998.11_ 101.12,_208.32_,210.11,_338.91_,428.54,620.10,_ 820.10_, _998.11_ 是类似这样的两个数据集,斜体的是误差太大的干扰值,不做统计,只统计误差小于0.5的值的相似性,并选出A中每排在B中最相似的排。这样的也可以用SQL处理吗?
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

1
简单的匹配机制设计思路?
1
关于使用ucenter 将两个ecshop会员整合的问题
1
表单数据和数据库字段里的内容匹配 为什么系统判断为不相等
3
《数据库索引设计与优化》中“MC”是什么意思
1
ASP.NET Core WebApi中一个controller中多个get方法如何正确匹配
1
一段文字中如何匹配到多个数据中的重点词句并将他加粗
0
sift特征描述子怎么存入数据库,查询时直接调用进行图像匹配
3
java如何使用政策表达式在一个File文件中匹配出年月日
1
用户名密码登录,数据存在数据库中的user表中,为何我的网页只能按其中的一条登录。
3
如何高性能模糊匹配删除部分前缀相同的key
0
C#中如何将geometry数据写入SQL Server数据库?
0
ACCESS 数据库 vba 数据类型不匹配
2
如何匹配匹配两个表的相同字段来为其中一个表的列赋值
2
springboot 项目使用mongotemplate 查询mongo数据库,查询字段和Java实体bean不匹配。
2
指定位置输出字符串:输入一个字符串后再输入两个字符,输出此字符串中从与第一个字
2
破解数据库中需要用到类似 select * from * where * = '123123' 的语句如何实现?
0
空间数据点位置关系匹配
1
oracle数据库 dblink 连接 sqlserver数据库,跨库创建视图使用union all时报:字符集不匹配
1
python正则表达式,匹配到了不希望匹配的东西,但不知道原因
3
从数据库里匹配图片的具体方法?