创建复杂的sql查询

创建复杂的sql查询,sql,select,Sql,Select,我有三张桌子: TB1: TB2: TB3: 我需要一个SQL查询来返回以下规范: id、TB1中的名称和TB2中的行数 在TB3中stat=20的行 TB2中重复的行数 输出: ID    Name    Count 1     R       2 3     B       0 谢谢 ID1 1 2 1 2 2 ID1   Stat 1     20 2     10 3     20 ID    Name    Count

我有三张桌子:

TB1:

TB2:

TB3:

我需要一个SQL查询来返回以下规范:

id、TB1中的名称和TB2中的行数 在TB3中stat=20的行 TB2中重复的行数 输出:

ID    Name    Count
1     R       2
3     B       0
谢谢

ID1     
1
2      
1      
2      
2      
ID1   Stat
1     20
2     10 
3     20
ID    Name    Count
1     R       2
3     B       0
select a.id, a.name, count(b.id1) 
from table1 a join table3 c 
on a.id = c.id1 and c.stat = 20 
left join table2 b on a.id = b.id1 
group by a.id, a.name
SELECT TB1.ID,
       TB1.Name,
       SUM(CASE WHEN TB2.ID1 IS NULL THEN 0 ELSE 1 END) AS Repeat
FROM   TB1 
       JOIN TB3
           ON TB1.ID = TB3.ID1
           AND TB3.STAT = 20
       LEFT JOIN TB2
           ON TB1.ID = TB2.ID1
GROUP BY TB1.ID,
       TB1.Name,