HiveQL - присоединение к столбцу, созданному в моем операторе выбора - PullRequest
0 голосов
/ 09 мая 2018

Я пытаюсь объединить две таблицы в Hive по нескольким столбцам. Один из столбцов, к которым я хочу присоединиться, - это столбец, в котором я манипулирую некоторыми данными, чтобы соответствовать структуре в другой таблице, а затем планирую присоединиться к ней.

Моя проблема в том, что созданная мной колонка не позволит мне присоединиться к ней. Я пробовал несколько разных способов, но до сих пор мне не удалось. Любая помощь приветствуется!

SELECT 
prvdr_num, 
CONCAT(SUBSTR(CLM_ADMSN_DT, 5, 2),"/",SUBSTR(CLM_ADMSN_DT, 7, 
2),"/",SUBSTR(CLM_ADMSN_DT, 1, 4)) as Calendar_Admit_date,
AdmitDate,
CMSId
FROM table1
INNER JOIN  table2
ON table1.CMSId = table2_lds.prvdr_num
AND table1.AdmitDate = 
table2.CONCAT(SUBSTR(CLM_ADMSN_DT, 5, 2),"/",SUBSTR(CLM_ADMSN_DT, 7, 
2),"/",SUBSTR(CLM_ADMSN_DT, 1, 4))

Я тоже пробовал это, и оно не будет работать.

SELECT 
prvdr_num, 
CONCAT(SUBSTR(CLM_ADMSN_DT, 5, 2),"/",SUBSTR(CLM_ADMSN_DT, 7, 
2),"/",SUBSTR(CLM_ADMSN_DT, 1, 4)) as Calendar_Admit_date,
AdmitDate,
CMSId
FROM table1
INNER JOIN  table2
ON table1.CMSId = table2_lds.prvdr_num
AND table1.AdmitDate = 
table2.Calendar_Admit_date

1 Ответ

0 голосов
/ 09 мая 2018

Вы пытались использовать новый столбец в качестве даты в объединении?

 SELECT 
    prvdr_num, 
    CONCAT(SUBSTR(CLM_ADMSN_DT, 5, 2),"/",SUBSTR(CLM_ADMSN_DT, 7, 
    2),"/",SUBSTR(CLM_ADMSN_DT, 1, 4)) as Calendar_Admit_date,
    AdmitDate,
    CMSId
    FROM table1
    INNER JOIN  table2
    ON table1.CMSId = table2_lds.prvdr_num
    AND table1.AdmitDate = 
    cast(CONCAT(SUBSTR(table2.CLM_ADMSN_DT, 5, 2),"/",SUBSTR(table2.CLM_ADMSN_DT, 7, 
    2),"/",SUBSTR(table2.CLM_ADMSN_DT, 1, 4)) as date)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...