If I have
Linestring(1 2, 1 5, 1 9)
Is there any function that can merge linestring and point preserving the order so output would be:
Linestring(1 2, 1 3, 1 5, 1 9)
If the LineString is simply to be subdivided at a position closest to the given Point, you could do what you want with this (splits LineString at closest Point to given Point and remerges the two segements afterwards)
However, if your Point is not supposed to be projected on the LineString, this will not work.
PostGIS has ST_AddPoint that should allow you to do this though you'd have to specify where to add the point.