Как создать временную таблицу в терадате
BEGIN;
CREATE TEMP FACT TABLE new_table DISTRIBUTE BY hash(a.var3) as
SELECT (YEAR(a.var1) - b.var2), a.var3
FROM d.data1 a, c.data2 b
WHERE (YEAR(var1) - var2) > 40
;
GO
SELECT * FROM age_DRG;
END;
Я не уверен, что не так с этим кодом. Я продолжаю получать эту ошибку
"Executed as Single statement. Failed [34 : HY000] [AsterData][ASTERJDBCDSII](34) NOTICE: current transaction is aborted, queries ignored until end of transaction block ()
Elapsed time = 00:00:00.016
STATEMENT 1: BEGIN;
CREATE Statement failed. "
1 ответ
- Нет такой функции YEAR, вместо нее можно использовать date_trunc('year', somedate)
- Вам не нужно использовать ключевое слово "FACT", Aster поймет его по типу распределения
- верно, в Aster нет ключевого слова GO
- Я бы порекомендовал вам использовать объединения, чтобы быть более точным, потому что Aster был разработан для расчета данных на рабочей стороне, и, я думаю, объединения будут более "читабельными" для Aster.