Я попытался запустить ниже запрос в Teradata и это привело, как ожидалось:Как работает запрос в Teradata?
select column1 as c1Alias from my_table where column2 in (c1Alias , 10 , 20 , 30) ;
Но я попытался запустить тот же запрос на энцефалопатии, он бросает исключение, как указано ниже:
FAILED: SemanticException [Error 10004]: Line 1:44 Invalid table alias or column reference 'c1Alias': (possible column names are: .......)
Я не удивился, почему он терпит неудачу в HIVE, но удивил, как он работает над Teradata.
Согласно моему пониманию, Классы выполняются в порядке, КАК ГДЕ >> ВЫБРАТЬ. Очевидно, псевдоним, сгенерированный в предложении SELECT, не будет доступен для использования в предложении WHERE. Поправьте меня, если я ошибаюсь.
Я действительно хотел знать, как он работает в терадате?
Teradata позволяет использовать псевдоним в предложении where, а также группировать и упорядочивать по предложениям. – Andrew