Как извлечь число с десятичной дробью в Hive, используя regexp_extract

У меня есть столбец Event_list. Поэтому я хотел бы извлечь номер после 20220=, Значение будет содержать ., но я мог только получить значение раньше .,

Мой текущий запрос

regexp_extract(event_list, '20220=([0-9]+)', 1)

Столбец event_list похож на

2 ответа

Решение
hive> select regexp_extract(',211,253,20219,20220=27.87,20222,20223','20220=([^,]*)',1);

27.87

или же

hive> select regexp_extract(',211,253,20219,20220=27.87,20222,20223','20220=(.*?),',1);

27.87

Попробуйте использовать:-

regexp_extract(event_list,'20220=([0-9.]+)', 1) 

если вы хотите данные после , также затем используйте его также в выражении регулярного выражения, как показано ниже:

regexp_extract(event_list,'20220=([0-9.,]+)', 1)
Другие вопросы по тегам