使用每个父行的值之和在SQLITE中创建一个视图

时间:2014-04-29 05:19:24

标签: sql sqlite

我得到了,例如两个表,一个包含用户列表......让我们说用户表

ID    Name
---------------
1     'Alejandro'
2     'Carlos'
3     'Pedro'

另一个包含交易“Money”表的列表。

ID  ID_User   Money
---------------------
1   1         45.5
2   1         45.5
3   2         45.5

我想建立一个视图,让我能够以某种动态获得每个用户的简历......例如:

Name         Money
---------------------
'Alejandro'  91.0
'Carlos'     45.5
'Pedro'       0.0

我尝试使用Sub querys,但我只得到所有钱的总和,而不是每个用户的总和。

任何帮助U_U

2 个答案:

答案 0 :(得分:0)

这可以通过join s:

来完成
SELECT    name, SUM(money) AS money
FROM      user
LEFT JOIN money ON user.id = money.id_user
GROUP BY  name

答案 1 :(得分:0)

这可以通过相关子查询来完成:

CREATE VIEW UserResume AS
SELECT Name,
       (SELECT TOTAL(Money)
        FROM Money
        WHERE ID_User = User.ID
       ) AS Money
FROM User

或使用外部联接:

CREATE VIEW UserResume AS
SELECT Name,
       TOTAL(Money) AS Money
FROM User
LEFT JOIN Money ON User.ID = Money.ID_User
GROUP BY User.ID