我似乎无法弄清楚如何在 sql 中使用与 isnull 或 ifnull 语句相反的语句。我需要说 if a.Error1
is not null ——然后打印' - '
和 + CHAR(13)+CHAR(10)
。如果 a.Error1 返回 null,则基本上不应该有破折号或换行符。因此,如果该字段不为空,则打印信息。
select a. ....
' - ' + a.Error1 + CHAR(13)+CHAR(10) +
' - ' + a.Error2 + CHAR(13)+CHAR(10) +
' - ' + a.Error3 + CHAR(13)+CHAR(10) +
' - ' + a.Error4 + CHAR(13)+CHAR(10) +
' - ' + a.Error5 + CHAR(13)+CHAR(10) +
' - ' + a.Error6 as 'error_message'
...
from table1 a
例如,如果对于给定的记录 error1、2 和 5 返回输出,我希望输出如下:
- Error1: There was a ...
- Error2: ....
- Error5: The data was ...
如果该行不存在错误,则它应该只是一个空/空字段。