ST. LOUIS -- John Axford's 48th consecutive save was a strange one. The game ended with a strike-'em-out, throw-'em-out -- at the plate.
Axford got a big assist from his fielders, who foiled a double steal while finishing a 3-2 victory Sunday that avoided a three-game sweep.
"I guess it was a best-case scenario," Axford said. "Luckily, it just kind of worked out."
Matt Holliday walked to start the ninth and pinch runner Tyler Greene went to third on a single by Carlos Beltran before Axford, who passed Brad Lidge for the fourth-longest streak in major league history, shut the door.
After Axford struck out David Freese on a full count, the Cardinals tried to steal a run when Yadier Molina struck out on a high delivery, with Beltran breaking for second and Greene ready to head home if there was a throw.
When catcher Jonathan Lucroy double-pumped on his throw to second it threw off Greene's timing. Beltran, meanwhile, stopped early because he thought he'd be a certain out, leaving Greene an easy out on a relay from shortstop Alex Gonzalez.
"I don't know what they were doing or what was going on, but it ended up working out for us," Lucroy said. "It was a weird play."
Greene didn't come close to touching the bag on a hook slide.
"Beltran was stealing and if he threw down I was going to try to take off for home," Greene said. "He almost pump-faked, so that kind of changed things a little bit."
It was the final failure in the clutch for the Cardinals, who were 2 for 14 with runners in scoring position and stranded 13 runners.
"I'll just say that that play didn't go as planned," manager Mike Matheny said.
Zack Greinke worked six strong innings and Lucroy's two-run double capped a three-run sixth for the Brewers.
Greinke (3-1) allowed a run on seven hits to help stop the Brewers' six-game road losing streak. He's 2-1 with a 2.11 ERA in four career games in St. Louis. He pitched a lot better than in his only other road start this year, when he surrendered eight runs in 3 2/3 innings at Chicago on April 12.
The Cardinals had at least two baserunners in four of Greinke's innings, but the right-hander got the big outs.
"That's not really the way Zack pitches but I thought he battled great," manager Ron Roenicke said. "I don't know if he's trying to be perfect at times, but sometimes that gets him in trouble."
Jaime Garcia (2-1) fell to 17-10 at home with a 2.38 ERA and all three of his shutouts, and 12-7 with 4.15 ERA on the road.
Axford is 5 for 5 this year and last blew a save on April 18, 2011, at Philadelphia. He's well aware of the streak.
"It's nice to do 48," Axford said. "The streak is great, it's great individually, but it's more on the team side. Obviously, if I don't get the save we're not going to get the win so I'd rather lock it down and get the win for the team."
St. Louis missed a chance to make it 2-0 in the fifth when, with one out, Garcia broke for home from third on Holliday's routine flyout to medium center, a certain sacrifice fly if he'd have tagged up.
"Yeah, that was terrible baserunning," Garcia said. "It's the first time it's ever happened to me. I'll learn from that."
The Brewers took the lead with a four-hit, three-run sixth. Aramis Ramirez had an RBI single to tie it and Lucroy, who had been 3 for 17 with runners in scoring position on the year, made it a two-run cushion with a drive off the left-field wall.
Lucroy thought the Cardinals were going to walk him so Garcia could face Travis Ishikawa in a lefty-lefty matchup, especially after Molina visited the mound.
"That's what I would do, too," Lucroy said. "He just made a mistake."
Matheny showed faith in Garcia when he pulled back a pinch hitter with two outs and one on in the sixth, and Garcia singled for the second straight at-bat. Rafael Furcal flied out to end the threat.
Garcia had a season-high six strikeouts in seven innings, his third straight start of seven innings or more.
Kameron Loe got Molina, who had six straight hits after singling in the second and had been 7 for 11 in the series, on a groundout with two on to end the seventh. The Cardinals cut the gap to a run when Matt Carpenter doubled off Francisco Rodriguez to start the eighth and scored on pinch hitter Daniel Descalso's groundout.
Before the game, there was a moment of silence for those injured in a violent storm at a bar near Busch Stadium shortly after the end of Saturday's game. There was one confirmed death. ... Milwaukee LHP Randy Wolf (1-2, 7.17) starts Monday in the opener of a three-game series at San Diego, opposing RHP Joe Wieland (0-3, 4.76). The Cardinals have the day off Monday before starting a three-game series at home against the Pirates. ... Robert "Kool" Bell of Kool and the Gang, in town for a concert with Van Halen, threw out a first pitch. ... Attendance of 45,824 was the fourth sellout in nine home games. ... Molina is 0 for 9 against Loe. ... The Brewers have won 51 in a row when leading in the ninth.