小编use*_*143的帖子

SQL Server 2008 - 如何加入3个表

SQL Server 2008:

我有3张桌子

Users, Scores, Lessons
Run Code Online (Sandbox Code Playgroud)

Users与... Scores相关联StudentID

Scores与... Lessons相关联LessonID

我想显示一个分数StudentID.这是我想要显示的列

Users.Name, Scores.LessonID, Scores.Result, Lessons.Title
Run Code Online (Sandbox Code Playgroud)

我知道如何加入2个表.我如何投入第三张桌子?

sql sql-server-2008

11
推荐指数
1
解决办法
6万
查看次数

SQL条件计算

我有3张桌子.他们有一对多的关系

table1 - mainID, Select00(bit), Select01(bit)
table2 - secID, mainID
table3 - secID, Num00, Num01



SELECT  table1.mainID ,  SUM(table3.Num00) as S00, SUM(table3.Num01) as S01
FROM    table1 INNER JOIN
        table2 ON table1.mainID = table2.mainID INNER JOIN
        table3 ON table2.secID = table3.secID
GROUP BY table1.mainID HAVING table1.mainID =11
Run Code Online (Sandbox Code Playgroud)

以下查询有效,但给了我所有的总和.

如何根据条件获得SUM?即

S00 = SUM(table3.Num00) if table1.Select00 = 1 (true)
S01 = SUM(table3.Num01) if table1.Select01 = 1 (true)
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2008

1
推荐指数
1
解决办法
2114
查看次数

标签 统计

sql-server-2008 ×2

sql ×1

sql-server ×1