Utworzono następujący kod HIVE i wymagam jego przetłumaczenia w celu użycia w scala. Z tego co rozumiem, musimy użyć sqlContext.sql Przykłady dostępne online mają tylko proste instrukcje select.Lub przykład poniżej.Używanie sqlContext.sql do sub-zapytań w scala
Na przykład, aby uruchomić proste zapytanie SQL w Scala:
val tableA = sqlContext.sql("Select * from game");
I nie wydaje się używać tej samej składni dla below.What kodu jest składnia przetłumaczyć poniższy kod, aby dopasować powyższe stosowanie.
DROP TABLE ADW.TERA_BARCODE_LOOKUP_TABLE_RAW ;
CREATE TABLE ADW.TERA_BARCODE_LOOKUP_TABLE_RAW AS
SELECT CAST(BRCDE_REF_I AS STRING) AS BARCODE,
MAX(TRIM(GST_SRC_ID)) AS GST_SRC_ID,MAX(SRC_ACTV_TS) AS SRC_ACTV_TS
FROM
(SELECT RANKED.*
FROM
(SELECT BRCDE_REF_I,GST_SRC_ID,SRC_ACTV_TS,
RANK() over (partition by BRCDE_REF_I ORDER BY SRC_ACTV_TS DESC) AS RANK
FROM
ADW.GST_SRC_ID_BRCDE_LKUP_TABLE X
WHERE UPPER(X.CURR_ACTV_F) = 'Y' AND TRIM(X.GST_SRC_ID) IN
(SELECT TRIM(GST_SRC_I) FROM ADW.CANDIDATE_GST_ID_SRC_TABLE GROUP BY TRIM(GST_SRC_I))
) RANKED
WHERE RANKED.RANK = 1 ) X
GROUP BY BRCDE_REF_I ;
Jaki jest błąd? Dodałbym "BEGIN TRAN" i "COMMIT" na początek i koniec kodu mysql i spróbuj go uruchomić ponownie. –