¿Es posible en PostgreSQL 9.4 (PLPGSQL) detectar si una cadena contiene una determinada cadena que incluye comodines y obtener los comodines, por ejemplo:
IF NEW.my_string CONTAINS 'patternXYZ' THEN NEW.my_values := getXYZ(my_string) END IF;Lo que daría como resultado que NEW.my_values contenga XYZ (que puede ser cualquier cosa en la cadena, pero solo los 3 caracteres).
SELECT CASE WHEN (NEW.my_string like '%patternXYZ%') THEN substring(NEW.my_string from '+pattern+') ELSE '00' END AS data FROM my_table;El patrón debe ser el parámetro para la consulta.