将空的临时表写入SQL Server中的HTML表中

问题描述 投票:0回答:1

我将安排一个SQL Server代码,每天将HTML输出到电子邮件中,有时此表可能没有行。我仍然希望代码能够运行并发送电子邮件,但要说“无数据”或类似内容。

这可能吗?如果是这样,有人可以显示一些示例代码吗?我假设我需要更改代码的From位,即

CAST(( select td =col1,'', td=col2,''
from #TempTable1
Order by 1
For XML PATH ('tr'),TYPE
) AS NVARCHAR(MAX) ) +

等...

所以要澄清:我的问题是如何从语句执行“条件”,即如果#TempTable1有数据,则输入#TempTable1,如果没有,则说“无数据”。

感谢@SeanLange指出我的问题尚不清楚。

html sql sql-server email
1个回答
1
投票

您可以在从表中获取数据之前检查表中是否包含数据。我会做这样的事情:

IF EXISTS(SELECT 1 FROM "YourTable") 
BEGIN
    SELECT * FROM "YourTable"
END ELSE BEGIN
    SELECT 'No Data'
END

编辑:

DECLARE @temp NVARCHAR(MAX) = CAST(( select td =col1,'', td=col2,''
    from #TempTable1
    Order by 1
    For XML PATH ('tr'),TYPE
    ) AS NVARCHAR(MAX) )

IF(LEN(@temp) = 0)
BEGIN
    SELECT 'No Data'
END ELSE BEGIN
    SELECT @temp
END
© www.soinside.com 2019 - 2024. All rights reserved.