我有一个配置单元表,它有一个名为datalist的列。它可以有以下值
XYZ_EF1_GHD_OLDDAT
XYZ_EF1_GHD_NEWFORMAT
ABC_FG1_JJJ_ASD_OLDDAT
TTT_LMN_IJK_YHVS_TXY_OLDDAT
TTT_LMN_IJK_YHVS_TXY_NEWFORMAT
PQR_GHSS_TYHT_NEWFORMAT
我需要创建一个输出,该输出将标识列中不同时具有\u newformat和\u olddat的所有名称
Value Reason
ABC_FG1_JJJ_ASD Missing NEW
PQR_GHSS_TYHT Missing OLD
XYZ_EF1_GHD Contains Both NEW and OLD
TTT_LMN_IJK_YHVS_TXY Contains both NEW and OLD
任何关于sql/hiveql逻辑的建议/帮助都将不胜感激。
1条答案
按热度按时间ymdaylpp1#
在子查询中,可以使用regexp函数
regexp_replace()
以及regexp_extract()
将值与后缀分开。然后,可以聚合并应用外部查询中的逻辑: