Mark McGwire matched Mickey Mantle on the career home run list and Henry Rodriguez drove in seven runs. Chipper Jones homered from both sides of the plate and Andruw Jones almost hit for the cycle.
The Colorado Rockies set a modern record by reaching double digits in runs for the seventh straight home game.
Yet on another huge day for hitters, pitchers Brian Meadows and Trevor Hoffman prevented the Arizona Diamondbacks from posting a big number.
Arizona's team-record winning streak ended at nine Sunday when Meadows and Hoffman combined on a two-hitter, giving San Diego a 3-1 victory. The Padres stopped their eight-game slide.
"It's a great feeling. It's a win we needed. They've been playing great baseball," Meadows said.
In other NL games, Houston routed Cincinnati 10-3, Montreal rallied past Chicago 16-15, St. Louis beat Los Angeles 12-10, Atlanta trounced Philadelphia 11-2, Colorado downed San Francisco 11-7, New York beat Florida 5-1 and Pittsburgh topped Milwaukee 3-0.
The visiting Diamondbacks got off to a fast start when Tony Womack homered on Meadows' second pitch of the game. Steve Finley singled with one out and Arizona went on to load the bases, but did not score.
After that, though, Arizona got only two more runners - on a walk and an error.
"The guy pitched a good game," Womack said. "Sometimes you got to be modest."
Meadows (4-3) pitched eight innings and Hoffman finished for his sixth save.
The Padres took advantage of two errors to score three times in the sixth. Womack made a wild throw from shortstop and third baseman Lenny Harris let a grounder go through his legs.
Cardinals 12, Dodgers 10 McGwire hit two home runs and tied Mantle for eighth place on the career list with 536 as St. Louis won at home.
The Cardinals and Los Angeles combined for a Busch Stadium-record eight home runs.
Craig Paquette, who went 5-for-5 with four RBIs, and Jim Edmonds also homered for St. Louis. Eric Karros homered twice and Gary Sheffield and Todd Hundley also connected for the Dodgers.
McGwire passed Jimmie Foxx on the career list with a two-run shot in the first inning. McGwire matched Mantle with a 487-foot drive in the second.
Cubs 16, Expos 15 > Rodriguez homered twice and drove in a career-high seven runs and Sammy Sosa had five hits and five RBIs for Chicago, yet still lost at Olympic Stadium.
Montreal pulled off a triple play in the first inning and rallied for three runs in the ninth. Rondell White hit a tying, two-run homer and pinch-hitter Mike Mordecai won it with a one-out single.
Eric Young stole five bases, the most by a Cubs player since George Gore swiped seven on June 25, 1881.
Braves 11, Phillies 2 Chipper Jones hit a two-run homer from the left side in the first inning and a solo shot from the right side in the seventh as Atlanta completed a three-game sweep at Philadelphia.
It was the fourth time the switch-hitter has accomplished the feat. He did it three times last year.
Andruw Jones nearly became the first Braves player to hit for the cycle since Albert Hall on Sept. 23, 1987. Jones hit an RBI double in the first, a two-run homer in the second and a triple in the fifth.
In the seventh, Jones' liner up the middle was caught by pitcher Trever Miller. Jones struck out in the ninth against Scott Aldred.
Rockies 11, Giants 7 Todd Helton hit a go-ahead double in the seventh inning and Colorado scored at least 10 runs for the seventh straight time at Coors Field.
According to the Elias Sports Bureau, which keeps major league statistics, the Rockies became the first team with such a home streak since 1900.
Helton leads the majors in hitting (.417) and tops the NL in RBIs (41). He strained his right hamstring running out his double and left the game. The Rockies won their fifth in a row.
Terrell Lowery, playing in place of injured Barry Bonds, went 3-for-3 with a three-run homer for San Francisco. Bonds sprained a joint in his lower back Saturday and returned home for X-rays and an MRI.
Mets 5, Marlins 1 Mike Piazza hit his 10th career grand slam and Mike Hampton pitched New York past visiting Florida.
Hampton gave up eight hits in his first complete game of the season. He walked none after beginning the day with a league-leading 37 walks.
Hampton beat out a bunt single in the sixth inning and Joe McEwing, batting leadoff in place of the released Rickey Henderson, followed with an RBI double. A pair of walks loaded the bases for Piazza.
Pirates 3, Brewers 0 Kris Benson pitched eight shutout innings and Pittsburgh blanked Milwaukee.
Benson gave up four hits and left after third baseman Luis Sojo's error leading off the ninth.
Brian Giles and Bruce Aven homered as the Pirates beat the Brewers for the second straight day after losing seven in a row to them in Three Rivers Stadium.
Astros 10, Reds 3 Mitch Meluskey hit a three-run homer and Scott Elarton limited Cincinnati to four hits in seven innings as Houston snapped the Reds' six-game winning streak.
Elarton (2-0) allowed two runs, struck out a season-high eight and walked five. He protected Houston's four-run lead in the seventh, fanning Dmitri Young with the bases loaded.
Young, who was 0-for-4 with a walk, had his career-high 18-game hitting streak - the NL's longest this season - snapped.
Steve Parris (2-5) lasted six innings and allowed six runs on 10 hits for the visitors.Reuse content