组合具有相同列和不同值的两个表的最佳方法

时间:2017-07-26 05:30:18

标签: mysql sql

我在查找在sql中组合我的两个表的最佳方法时遇到问题 我有2个用户特征表,如下所示,列相同,但值不同:

这2个表代表用户的用户特征配置文件,但是从不同的源生成我需要的是将它组合到单个用户特征表中,我们不知道来自table1的用户(i)的数据是否更真实或来自表2。你认为结合这两张桌子的最佳方式是什么?
例如,我应该使用平均值还是最大最小值,还是有更好的方法?

Table1:

user   feature1    feature2
 A        2          8
 B        4          3
 C        1          6

表2:

user   feature1    feature2
 A        3          6
 B        2          4
 C        4          8

2 个答案:

答案 0 :(得分:1)

只需使用连接查询,当您在表格和表格中至少有一个相同的列时,这是最好的方法。在这些表中,您将用户列作为标识

select 
a.user, a.feature1 as FeatureA, b.feature1 as FeatureB 
from table1 a join table2 b 
on a.user=b.user;

答案 1 :(得分:1)

您将不得不查看使用这些表格的代码,看看它是如何不同的

也许一张桌子不再使用

也许一个表用于设置用户界面功能,而另一个表用于设置数据处理功能(在这种情况下,使用一个名为uiFeature1,uiFeature2,dpFeatire1,dpFeature2

的列创建一个名为feature的表

基本上你在这里问过一个问题,互联网上没有人可以为你回答;你自己必须自己做研究