The Cubs beat the Cardinals 7-6 Tuesday, rallying for six runs in the ninth inning, to improve to 47-48 this season.
Here are 10 observations from the game.
1. It looked like the Cubs were on their way to a third straight loss, trailing the Cardinals 6-1 in the ninth inning. A six-run rally later, they took the lead over St. Louis to complete a massive comeback.
Patrick Wisdom reached on a dropped third strike, Nico Hoerner singled, and Jake Marisnick walked to load the bases. Walks by Sergio Alcántara and Anthony Rizzo made it 6-2 and 6-3.
Javy Báez' two-run single made it 6-5, and Ian Happ's two-run double down the first base line pushed the Cubs ahead 7-6.
2. Happ has had a down season at the plate and was mired in a 5-for-40 slump (.125) before that hit, dating back to June 29.
"Huge," Happ said of coming up with the hit. "It was fun to be able to come through there in that situation, help the team.
"I've been grinding a lot this year and haven't really had a lot of moments like that. To have one of those and really find that and feel that, that was really cool."
3. To say the Cubs' rally was improbable might be understating it. The win is their first when trailing by five or more runs in the ninth since May 10, 2000, when they trailed the Brewers by five, according to Elias Sports Bureau.
"I love it. They don't stop competing," manager David Ross said.
"There's no give up with this group and their experience, and when things haven't been going our way, it would be really easy to kind of cash one in, especially a game like that on a Tuesday night."
4. Happ entered the game in the fifth in place of Kris Bryant. Fan speculation immediately turned to a potential Bryant trade, but the Cubs later announced he exited with right hamstring fatigue.
Ross said Bryant had "heavy legs," adding he didn't get much time off during the All-Star break. Bryant got work done with the training staff and was feeling better after. He could get a day off Wednesday.
5. The Cubs offense drew six walks in their last four games. They walked six times Tuesday, including those three in the ninth.
6. Trevor Williams pitched five innings in his first start since May 26. He allowed a single through two scoreless frames before the Cardinals scored four times on six hits and a walk the next two innings.
7. Williams, who bounced back to pitch a scoreless fifth, has now gone less than six innings in nine of his 11 starts this season.
8. Báez, after making two errors in Monday’s loss, picked up another with two outs in the fifth Tuesday. After a backhanded stop in the shortstop hole, his throw to first base was up the line.
9. That was Báez’ 18th error this season, his new career high in a single season — regardless of position. He set a career high for his most errors at shortstop in a season Monday.
10. Craig Kimbrel picked up his 370th career save, making him the ninth pitcher in MLB history to reach that mark.
On deck: First pitch Wednesday is 7:15 p.m. Kyle Hendricks (12-4, 3.65 ERA) and Adam Wainwright (7-6, 3.71 ERA) are the probable starters.