如何制作两个不同表格的两列之和?
在我的情况下,我希望求和不同表的两列,并在第一个表中返回添加的值。
示例:
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'在'字段列表'
答案 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