SemanticException [Ошибка 10025]: Строка 1:7 Выражение отсутствует в ключе GROUP BY 'stock_symbol'
Это мой запрос Hive:
select a.stock_symbol,a.stock_date,a.stock_price_open,a.stock_price_high,
a.stock_price_low,a.stock_price_close,b.stock_symbol,
MAX(b.stock_price_high),
MIN(b.stock_price_low)
from YAHOO_STOCKS a
join YAHOO_STOCKS b
on a.stock_symbol=b.stock_symbol
where b.stock_symbol=a.stock_symbol
and b.stock_date > date_sub(a.stock_date,364)
and b.stock_date <= a.stock_date
group by b.stock_symbol
order by a.stock_symbol,a.stock_date;
Я получаю эту ошибку:
СБОЙ: SemanticException [Ошибка 10025]: Строка 1:7 Выражение отсутствует в ключе GROUP BY 'stock_symbol'
Пожалуйста, помогите мне.
1 ответ
Решение
Всякий раз, когда вы используете UDF, вы должны группировать по всем другим столбцам.
Используйте этот запрос:
select a.stock_symbol,a.stock_date,a.stock_price_open,a.stock_price_high,
a.stock_price_low,a.stock_price_close,b.stock_symbol,
MAX(b.stock_price_high),
MIN(b.stock_price_low)
from YAHOO_STOCKS a
join YAHOO_STOCKS b
on a.stock_symbol=b.stock_symbol
where b.stock_date > date_sub(a.stock_date,364)
and b.stock_date <= a.stock_date
group by a.stock_symbol,a.stock_date,a.stock_price_open,a.stock_price_high,
a.stock_price_low,a.stock_price_close,b.stock_symbol
order by a.stock_symbol,a.stock_date;