Я пытаюсь вложить функции в postgresql, пытаясь извлечь имя каталога (фактически третьего) из пути.
Мой начальный SQL код был:
SELECT "Path", regexp_matches("Path", '^([^/]*/){3}.*') FROM ...
Поскольку возвращаемое значение моего регулярного выражения ограничено фигурными скобками и двойными кавычками (при наличии пробелов), я пытаюсь удалить эти разделители с помощью вложенных функций:
SELECT "Path", right(regexp_matches("Path", '^([^/]*/){3}.*'),2) FROM
Но я ' ve следующая ошибка:
ERROR: function right(text[], integer) does not exist
LINE 2: SELECT "Path", right(regexp_matches("Path", '^([^/]*/){3}.*'...
^
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
État SQL :42883
Caractère :17
Я не знаю, как отформатировать выражение, чтобы быть принятым ...
Конечно, если кто-то может дать мне способ получить точно n-ное поле строки, разделенное косой чертой, я был бы счастлив!