Я использую Amazon Redshift.удалить дубликаты из разделенной запятой строки (Amazon Redshift)
У меня есть столбец в этой строке, который хранится как запятая, как Private, Private, Private, Private, Private, Private, United Healthcare
. Я хочу удалить дубликаты из него, используя query
, поэтому результат должен быть Private, United Healthcare
. Я нашел некоторые решения, очевидно, из Stackoverflow и узнал, что это возможно с помощью регулярных выражений.
Таким образом, я попытался с помощью:
SELECT regexp_replace('Private, Private, Private, Private, Private, Private, United Healthcare', '([^,]+)(,\1)+', '\1') AS insurances;
И
SELECT regexp_replace('Private, Private, Private, Private, Private, Private, United Healthcare', '([^,]+)(,\1)+', '\g') AS insurances;
А также некоторые другие регулярные выражения, но, похоже, не работает. Любое решение?
Это Postgres или Redshift? Версия Postgris Redshift основана на том, что она настолько стар, что ее нельзя сравнить с современными Postgres. –
Это Redshift, но я думаю, что он использует базу данных postgrey. – Dev
Это две разные вещи. Amazon Redshift - на основе старой версии Postgres. Это либо Redshift **, либо ** Postgres, но не оба, и тот факт, что предлагаемое решение 'regexp_split_to_table' не работает для вас, является признаком этого. –