【发布时间】:2017-05-29 17:59:23
【问题描述】:
我正在尝试在 redshift 中实现以下目标 -> 检查查询是否返回任何记录,如果是,则运行另一个查询并拉回结果,如果没有引发错误并使主查询失败。这就是它在 sql server 中的工作方式:
IF exists (SELECT * from [TABLE] where COLUMN1 = 'ABC')
SELECT [COLUMN2] from [TABLE] where COLUMN1 = 'ABC'
ELSE RAISERROR ('Error',16, 1);
我在使用 redshfit CASE 函数时失败了,似乎 raiserror 不存在?
有什么想法吗?
【问题讨论】:
-
Redshift SQL 不包含 T-SQL (SQL Server) 中的许多过程编程元素,例如 IF..THEN 构造。这种逻辑通常需要由外部应用程序处理。