-- Splits the line at the given point and returns the two parts -- in a multilinestring. CREATE OR REPLACE FUNCTION split_line_on_node(line GEOMETRY, point GEOMETRY) RETURNS GEOMETRY AS $$ BEGIN RETURN ST_Split(ST_Snap(line, point, 0.0005), point); END; $$ LANGUAGE plpgsql;