Sql server 2008 有条件地插入数据;子查询问题

Sql server 2008 有条件地插入数据;子查询问题,sql-server-2008,ssis,conditional-statements,Sql Server 2008,Ssis,Conditional Statements,我正试图在SSIS OLEDB源代码中实现类似的功能 1) 统计异常表中的记录 2) 如果有例外情况,请将数据写入excel工作表 3) 如果没有,请写“无可用数据” 我为此编写了一个简单的查询,但是得到了错误 Msg 116,16级,状态1,第3行 当子查询未引入EXISTS时,只能在选择列表中指定一个表达式 我理解错误消息的含义,知道如何解决它,但我想不出解决这个问题的替代方案。任何帮助都将不胜感激。谢谢。您应该能够使用EXISTS关键字处理此问题。沿着这些思路应该可以做到这一点: if e

我正试图在SSIS OLEDB源代码中实现类似的功能

1) 统计异常表中的记录 2) 如果有例外情况,请将数据写入excel工作表 3) 如果没有,请写“无可用数据”

我为此编写了一个简单的查询,但是得到了错误 Msg 116,16级,状态1,第3行 当子查询未引入EXISTS时,只能在选择列表中指定一个表达式


我理解错误消息的含义,知道如何解决它,但我想不出解决这个问题的替代方案。任何帮助都将不胜感激。谢谢。

您应该能够使用EXISTS关键字处理此问题。沿着这些思路应该可以做到这一点:

if exists(select * from exceptionTable)
    select * from exceptionTable
else 
    select 'No Error data available'

EXISTS关键字指定一个子查询,该子查询可用于测试子查询返回的任何行是否存在。如果没有返回任何行,它将计算为false,并执行ELSE子句。

并且我需要返回异常表BTW的所有列(如果其中有记录)。
if exists(select * from exceptionTable)
    select * from exceptionTable
else 
    select 'No Error data available'