Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何在Amazon Redshift中正确使用横向列别名引用?_Sql_Amazon Web Services_Amazon Redshift - Fatal编程技术网

Sql 如何在Amazon Redshift中正确使用横向列别名引用?

Sql 如何在Amazon Redshift中正确使用横向列别名引用?,sql,amazon-web-services,amazon-redshift,Sql,Amazon Web Services,Amazon Redshift,根据,Amazon Redshift支持横向列别名引用,这意味着我可以引用在表/视图定义中给定给列的新创建的别名,只要在定义别名后引用该别名即可 但是,当我运行以下查询时: 案例 当vht.current\u电子邮件为空或vht.current\u电子邮件= 然后vht.original\u google\u contact\u email ELSE vht.current_电子邮件 以联系人电子邮件结束, 案例 当vht.company\u domain为空或vht.company\u dom

根据,Amazon Redshift支持横向列别名引用,这意味着我可以引用在表/视图定义中给定给列的新创建的别名,只要在定义别名后引用该别名即可

但是,当我运行以下查询时:

案例 当vht.current\u电子邮件为空或vht.current\u电子邮件= 然后vht.original\u google\u contact\u email ELSE vht.current_电子邮件 以联系人电子邮件结束, 案例 当vht.company\u domain为空或vht.company\u domain= 然后选择拆分部分联系电子邮件“@”,2 ELSE vht.company\u域 以公司名称结束 我得到以下错误: 目前还不支持这种类型的相关子查询模式

如果可能的话,我想使用联系电子邮件获取公司域名。可能会发生以下两种情况之一:

 1. Syntax error
 2. I don't understand the feature properly

我的直觉告诉我是后者。无论哪种方式,我都希望得到一些反馈,帮助我解决这个问题

我假设问题来自于选择输入


你能删除选择按钮吗?我认为这不是必需的。

这是整个查询吗?没有以select子句开头。否。我只是添加了与我面临的bug相关的列。
THEN (SELECT split_part(contact_email, '@', 2))