如何将两列不同的两列相加?

时间:2016-08-10 13:55:20

标签: mysql sql

如何制作两个不同表格的两列之和?

在我的情况下,我希望求和不同表的两列,并在第一个表中返回添加的值。

示例:

Tbl_one

package com.saransh.try3;

/**
* Created by Saransh01 on 25-07-2016.
*/
public class DateTime {

private String date;
private String time;
private int hr;
private int min;
private int sec;
private int dy;
private int mon;
private int yr;
// public DateTime(String date, String time) {
//     this.setDate(date);
//    this.setTime(time);
// }
public DateTime(int hr, int min, int sec, int dy, int mon, int yr) {
this.hr = hr;
this.min = min;
this.sec = sec;
this.dy = dy;
this.mon = mon;
this.yr = yr;
}

public int getMin() {
    return min;
}

public void setMin(int min) {
    this.min = min;
}

public int getSec() {
    return sec;
}

public void setSec(int sec) {
    this.sec = sec;
}

public int getMon() {
    return mon;
}

public void setMon(int mon) {
    this.mon = mon;
}

public int getYr() {
    return yr;
}

public void setYr(int yr) {
    this.yr = yr;
}

public int getHr() {
    return hr;
}

public void setHr(int hr) {
    this.hr = hr;
}

public int getDy() {
    return dy;
}

public void setDy(int dy) {
    this.dy = dy;
}

public String getDate()
{
    return date;
}

public void setDate(String date)
{
    this.date = date;
}

public String getTime()

{
    return time;
}

public void setTime(String time)


{
    this.time = time;

}



}

tbl_two

colum ID | colum Point
1        | 1000
2        | 2000

RESULT

Tbl_one

colum ID | colum Point
1        | 10000
2        | 5000

我尝试了这个查询,但效果不好

colum ID | colum Point
1        | 11000 
2        | 7000

结果错误:#1054 - 未知栏' tbl_2.columY'在'字段列表'

2 个答案:

答案 0 :(得分:2)

通常,人们会使用select查询:

select id, sum(point)
from ((select id, point from tbl_one) union all
      (select id, point from tbl_two)
     ) t
group by id;

如果您确实想要更新表格,则一种方法使用join

UPDATE tbl_1 t1 JOIN
       tbl_2 t2
       ON t1.id = t2.id
    SET t1.Point = t1.Point + t2.Point;

但是,如果你想做的就是得到汇总的结果,那么更新表似乎是极端的。

答案 1 :(得分:0)

我认为您应该在更新请求中与tbl_two建立联接,希望如下:

UPDATE tbl_1 INNER JOIN tbl_2 ON tbl_2.ID = tbl_1.ID SET tbl_1.columX= tbl_1.columX + tbl_2.columY
相关问题