我有一个关于从另一个表中添加多个列值的问题,并作为添加列返回给结果。SQL查询添加多列
这是我的第一张桌子。
attID | val1 | val2 | val3 | att |
-----------+---------+---------+----------+---------+
1 | 10 | 10 | 10 | P |
1 | 20 | 20 | 20 | M |
1 | 30 | 30 | 30 | HA |
2 | 1 | 1 | 1 | P |
2 | 2 | 2 | 2 | M |
2 | 3 | 3 | 3 | HA |
我的第二个表是
ID | name | attID |
---------+--------+---------+
101 | luke | 1 |
102 | zik | 2 |
我想要的结果是:
ID | name | P | M | HA |
-----+--------+--------------+----------+------------+
101 | luke | 30 | 60 | 90 |
102 | zik | 3 | 6 | 9 |
列VAL1 VAL2和VAL3由ATT添加,并添加到结果表的另一列我的解决方案
select
ID, Name,
(val1 + val2 + val3) P,
(val1 + val2 + val3) M,
(val1 + val2 + val3) HA
from
t1, t2
where
t1.attid = t2.addid
group by
att
我试过很多次,但事先无法找出解决的办法
感谢,如果有人可以给我真正的解决方案
请发表你已经试过什么一个例子,什么结果是 – metame
[不良习惯踢:使用旧样式的JOIN(http://sqlblog.com /blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old-style-joins.aspx) - 旧式*逗号分隔的表*样式列表已替换为*在ANSI - ** 92 ** SQL标准(** 25年**前)中使用ANSI + JOIN'语法,并且不鼓励使用 –