【问题标题】:Matlab SQL update queryMatlab SQL 更新查询
【发布时间】:2012-11-12 15:06:49
【问题描述】:

所以我有一些数据如下:

var1 (时间价值1)

2       1934
3       3221
4       1314

var2 (时间价值2)

2       836
3       5364
4       2143

我想将它添加到我创建的数据库中的新表中,其中包含以下字段:时间、值 1、值 2。

使用 matlab 的 datainsert 函数得到以下结果(这不是我想要的):

time    value1    value2
2       1934    
3       3221
4       1314
2                 836
3                 5364
4                 2143

现在我正在尝试使用更新功能,所以我希望得到以下结果:

time    value1    value2
2       1934      836
3       3221      5364
4       1314      2143

要将 time 和 value1 放入表中,我执行以下操作:

 datainsert(connection,'table',{'time','value1'},var1);

但是我现在应该怎么做才能插入 value2 数据?

提前致谢!

【问题讨论】:

    标签: sql database matlab


    【解决方案1】:

    var1 和 var2 的时间值是否相同(例如,相同的值具有相同的顺序)?

    在这种情况下,您可以简单地创建具有三个字段的公共数组并将此数组插入数据库:

    new_var=[var1 var2(:,2)];
    datainsert(connection,'table',{'time','value1','value2'},new_var);
    

    如果 var1 和 var2 的时间值顺序不同,您将需要更复杂的操作来创建通用数据集。例如,您可以使用交集:

    [new_time,i1,i2] = intersect(var1(:,1), var22(:,1));
    new_var=[new_time var1(:,2) var2(:,2)];
    

    【讨论】:

    • 谢谢!是的,两个变量的时间值应该相同。每个变量都有单独的变量的唯一原因是因为我首先从数据库中单独读取它们。我现在就试试你的建议:)
    猜你喜欢
    • 2015-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多