Willson Contreras drove in four runs and Carl Edwards Jr. provided some timely relief, helping the Chicago Cubs beat the Chicago White Sox 7-2 on Tuesday.
John Lackey hit four batters, including three in one inning. Carlos Rodon matched a career high with 11 strikeouts, and was gone after four innings. Javier Baez struck out five times, and Kris Bryant was handed his first career ejection.
Ben Zobrist reached four times from the leadoff spot as the North Siders won for the ninth time in 11 games since the All-Star break.
The AL-worst White Sox were unable to overcome a strange performance by Rodon (1-4) in their 10th loss in 11 games. The left-hander struck out the side three times and smacked a two-run double for his first career hit, but struggled with his command in his third straight loss.
Rodon, the No. 3 overall pick in the 2014 draft, was charged with four runs and seven hits.
The Cubs carried a 4-2 lead into the sixth, but Lackey was pulled after the White Sox put runners on second and third with no outs.
Edwards came in and struck out Tyler Saladino before making an athletic play on Melky Cabrera's comebacker for the second out. Edwards then struck out Jose Abreu to end the inning.
Omar Narvaez went 2 for 2 with two walks for the White Sox, who went 1 for 13 with runners in scoring position.
The five strikeouts for Baez were a career high. The Cubs struck out 17 times overall, their most in a nine-inning game this season.
The home-and-home series moves to the South Side for the next two games. Cubs RHP Jake Arrieta (9-7, 4.11 ERA) faces White Sox RHP James Shields (2-2, 5.79 ERA) on Wednesday night. Arrieta is 2-1 with a 2.13 ERA in four July starts. Shields is winless over his last three outings with a 9.60 ERA.
>>Cardinals Prospect Scores Winning Run In Big League Debut
Harrison Bader doubled to lead off the ninth inning and scoring on Jedd Gyorko's short sacrifice fly in a 3-2 win over the Colorado Rockies on Tuesday night.
It was Bader's big league debut.
Bader got the news of the surprise call-up on Tuesday morning when the Cardinals decided to place Dexter Fowler on the 10-day disabled list with a strained left wrist.
Greg Garcia sacrificed as Bader took third, and Gyorko hit a fly near the right-field line that Carlos Gonzalez caught 248 feet from the plate. The speedy Bader slid across jubilantly as Gonzalez's one-hop throw went slightly up the third-base line.
Lance Lynn, who may be traded before Monday's deadline, allowed one run and three hits over six innings. The 30-year-old right-hander is eligible for free agency after this season.
Rockies starter Jon Gray gave up two runs and eight hits in five innings.
Cardinals rookie Paul DeJong hit a two-run homer in the first, his 13th of the season and seventh in July.
Gerardo Parra had a sacrifice fly in the seventh off Kevin Siegrist, and Trevor Story tied the score in the eighth against Matt Bowman with his 14th homer.
Trevor Rosenthal (3-4) pitched two scoreless innings.
Jeff Hoffman (6-2, 5.10 ERA) is to start Wednesday. He allowed seven runs in three innings against Pittsburgh in his last start but is 4-0 with a 2.45 ERA in five road starts this season.
Carlos Martinez (6-8, 3.34 ERA) enters Wednesday 4-3 with a 2.90 ERA in 10 home starts this season.