通过子查询算术?

时间:2010-06-21 15:34:36

标签: mysql

如何合并这两行?

"SELECT col1, col2, col3, col4 FROM table_a WHERE col4 = '$col4_val'"

"SELECT col1 FROM table_a WHERE col5 = '$col4_val'"

说第一个查询col1 = 20,第二个查询col1 = 10

如何创建一个从第一个查询返回col1,col2,col3,col4值但col1 = 30(第一个和第二个查询一起添加)的查询?

我可以通过php进行算术运算,但如果可能,我更愿意在查询中进行。

2 个答案:

答案 0 :(得分:6)

"SELECT (a.col1 + b.col1) as 'summed value', a.col2, a.col3, a.col4 
FROM table_a as a 
JOIN table_b as b 
ON a.col4 = b.col5 
WHERE a.col4 = '$col4_val'"

答案 1 :(得分:0)

好的,没关系,我弄清楚了......

"SELECT sum(col1 + (SELECT col1 FROM table_b WHERE col5 = '$col4_val')) as col1, col2, col3, col4 FROM table_a WHERE col4 = '$col4_val'"