Okay, for a number of reasons, I tend to build a floodgate system upstream of the river, to dry up the whole thing on command.
Here is how I do.
TL;DR: Use screwpumps the whole width of the river to play moise.
The following shematics are a top view of a perfectly straight river, flowing from north to south.
~ for water (assumed non-walkable, 7/7, but we don't really care.)
. for floor
b for bridge, of constructed floors preferably.
S for screw pumps.
W for walls
First we have:
.~~~.
.~~~.
.~~~.
.~~~.
.~~~.
.~~~.
First step is to build a bridge, from wich you can work.
.~~~.
.~~~.
.~~~.
.FFF. (water still flowing below, ofc)
.~~~.
.~~~.
Then you build a row of screw pumps, pumping south to north.
.~~~.
.~~~.
.SSS.
.SSS. (screwpumps built on the bridge (walkable tile on the bridge) South to north.)
.~~~.
Then you add walls to avoid flooding the whole map
.~~~.
W~~~W
WSSSW (Anti-floodback walls).
.SSS. (screwpumps built on the bridge (walkable tile on the bridge) South to north.)
.~~~.
Then it's up to you to power it via wind/waterwheel, dwarf power or something else.
You have the choice to either wait for the whole river to flow off-map/dry up, wich can take a year or two and may be a problem if you need it done fast/can't build a powered system and spare the dwarves. (hint: I always built a shelter around the system so I can operate it even in case of sieges.)
Or build the same system reversed 3 tiles south. That will keep the water from flowing back.
Then, in the dried spot, you just build a raw of walls/floodgates and a lever.
The same concept can be applied to aquifer, and even volcanos.
Pump the whole thing back into itself, faster than it can refill. Litterally playing a strength/endurance game against mother nature.
It's the simplest; most dwarven thing I can imagine.