如何组合两个表,其中一个表有另一个我要添加到两个表中的表?
我有这两个表,ID匹配和ID,我想将它组合成右边的那个,好像总匹配为null-但默认值为-0
我试过这样的想法 -
Select distinct k.ID,
matchSum
from theID as k, ID-matchs
但它给了我 笛卡尔乘法。
答案 0 :(得分:1)
您可以使用LEFT JOIN
和coalesce
来获得所需的结果。
SELECT t1.Id,
Coalesce(t2.matches, 0) as Matches
FROM theId t1
LEFT JOIN IDmatchs t2 ON t1.Id = t2.Id
order by t1.Id;
您可以查看演示here
答案 1 :(得分:0)
尝试此查询:
SELECT
B.ID,
ISNULL(A.Matches, 0) as Matches
FROM
TABLEA as A
LEFT JOIN TABLEB as B
on A.ID = B.ID
答案 2 :(得分:0)
您可以尝试使用UNION
SELECT * FROM table1
UNION
SELECT *, ISNULL(matches,0) FROM table2
或者反过来使用isnull将null替换为0,我不确定表名是什么。