Zimmerman was 3-for-16 heading into the All-Star break.
Brewers 10, Pirates 7: Cody Ransom hit his first career grand slam with two outs in the eighth and Ryan Braun hit two home runs for host Milwaukee. Martin Maldonado had four hits as the Brewers handed Pittsburgh its third loss in the last 13 games and improved to 40-6 against the Pirates at Miller Park since 2007.
Greinke became the first pitcher since Red Faber of the White Sox in 1917 to start three consecutive team games in a season. He was ejected after throwing only four pitches last Saturday, started the following day (lasting only three innings) and then pitched the first game after the All-Star break.
Dodgers 2, Padres 1: Clayton Kershaw (7-5) picked up the win as host Los Angeles celebrated the return of Matt Kemp (2-for-4) and Andre Ethier (0-for-2) to the lineup. Kemp missed 51 of the Dodgers' previous 53 games because of a hamstring strain. Ethier had been sidelined since June 28 because of an oblique strain.
Rockies 6, Phillies 2: Josh Rutledge had two hits and two RBIs in his major-league debut for host Colorado. Cliff Lee (1-6) took the loss for Philadelphia, which has lost five straight and 11 of 12.
Reds 5, Cardinals 3: Allen Craig's throwing error in the seventh helped host Cincinnati earn its fourth straight win.
Cubs 8, Diamondbacks 1: Alfonso Soriano homered twice, doubled twice and had five RBIs to lead host Chicago.
Red Sox 3, Rays 1: David Ortiz hit his 23rd homer and Pedro Ciriaco had three hits and two RBIs for visiting Boston.
Athletics 6, Twins 3: Jonny Gomes' grand slam helped visiting Oakland overcome 15 strikeouts by Francisco Liriano.
Rangers 3, Mariners 2: Derek Holland pitched into the eighth and Adrian Beltre hit a two-run homer for visiting Texas.
Tigers 7, Orioles 2: Miguel Cabrera and Jhonny Peralta homered as visiting Detroit won its sixth straight.
White Sox 9, Royals 8: Kevin Youkilis hit a sacrifice fly in the 14th and Adam Dunn hit his 26th homer for visiting Chicago.
Indians 1, Blue Jays 0:Justin Masterson pitched seven innings and Travis Hafner homered for visiting Cleveland.-- AP