Siendo completamente nuevo en PL / pgSQL, ¿cuál es el significado de los signos de dólar dobles en esta función ?
CREATE OR REPLACE FUNCTION check_phone_number(text)
RETURNS boolean AS $$
BEGIN
IF NOT $1 ~ e'^\\+\\d{3}\\ \\d{3} \\d{3} \\d{3}$' THEN
RAISE EXCEPTION 'Wrong formated string "%". Expected format is +999 999';
END IF;
RETURN true;
END;
$$ LANGUAGE plpgsql STRICT IMMUTABLE;
Supongo que, en RETURNS boolean AS $$
, $$
es un marcador de posición.
La última línea es un poco misteriosa: $$ LANGUAGE plpgsql STRICT IMMUTABLE;
Por cierto, ¿qué significa la última línea?
$$
y puede aprender algo nuevo leyéndolo, por ejemplo, también hay$foo$