Suppose we have a series of buoys floating in the water, each one meter downstream from the last (we'll pretend that the current is stable enough that they stay the same relative position from each other). Suppose at 0 sec the boat is at buoy0, and both are assigned the x coordinate 0m. At 1 sec the boat is at buoy5. So relative to the water, the boat is travelling 5m/s. At time 0 sec, buoy5 was at x = 5m. If the river current is 1m/s, then at time 1 sec, buoy5 is at x = 6m. So the boat travelled 6m in 1s, for a velocity of 6m/s, which is equal to the current velocity plus the velocity of the boat relative to the water.
To some extent, "relative velocity" is, by definition, total velocity minus the velocity of the thing it's relative to, so it follows that total velocity is relative velocity plus the velocity of the thing it's relative to. One way of thinking about a position vector is that it's the displacement vector between the origin and the point being considered. That is, given a point $A$, $\vec A= A-O$ (in mathematical terms, a vector space can be defined from an affine space by picking an origin point). Note that $A$ and $O$ are actual points, while $\vec A$ is a position vector. If we want to find a velocity, it doesn't matter what point we choose as the origin, as long as it's consistent, because velocity is calculated in terms of difference in position vectors. $\vec v = (\vec p_f - \vec p_i)/(t_f-t_i)$ and $\vec p_f - \vec p_i = (P_f-O)-(P_i-O)=P_f-P_i$, so $O$ cancels out. If, however, we are measuring the position relative to the current, then the origin point is moving with the current, so we have two different $O$, so we have $(P_f-O_f)-(P_i-O_i)=(P_f-P_i)-(O_f-O_i)$
Calculating the velocity relative to the current is different from calculating the velocity in the current's frame of reference. With the speeds you'll encounter with rivers, they end up being very close to the same thing, but at relativistic speeds they are different.