Jack Flaherty tossed seven scoreless innings as the Cardinals defeated the Reds 5-2 in St. Louis.
Yadier Molina drove in three to lead the St. Louis offense.
Dexter Fowler and Jose Martinez each contributed an RBI for the Cardinals, who have won eight of their last 10.
Scott Schebler doubled in both runs for the Reds in the ninth. Sonny Gray took the loss after giving up two runs over five innings for Cincinnati, which has lost two in a row.