在sql中连接两个表时,将空值替换为0而不是null

在sql中连接两个表时,将空值替换为0而不是null,sql,sql-server,crystal-reports,Sql,Sql Server,Crystal Reports,我连接了两个表t1和t2。由于表t2中没有数据,因此输出生成一些空记录。我想显示0,而不是显示null,因为我必须在crystal报告中执行一些算术运算。 请帮助我….示例 declare @t table (ID int) declare @t1 table (ID int) insert into @t (id) values (1) select t.ID,ISNULL(TT.ID,0)id from @t t LEFT JOIN @t1 tt ON t.ID = tt.ID 使

我连接了两个表t1和t2。由于表t2中没有数据,因此输出生成一些空记录。我想显示0,而不是显示null,因为我必须在crystal报告中执行一些算术运算。 请帮助我….

示例

declare @t table (ID int)
declare @t1 table (ID int)

insert into @t (id) values (1)

select t.ID,ISNULL(TT.ID,0)id  from @t t
LEFT JOIN @t1 tt
ON t.ID = tt.ID 

使用
COALESCE
功能,自动将
null
值替换为
0
。 样品

ISNULL(t2.col1,0)它将完成此链接也有解决方案的技巧。
SELECT COALESCE(total_amount, 0) from #Temp1