Edgardo Alfonzo drove in a career-high six runs, and the San Francisco Giants moved a half-game ahead of Los Angeles in the NL West with an 11-5 win over the visiting Dodgers last night.

Alfonzo hit a tiebreaking, two-run single in the seventh inning and a three-run double in the eighth. Deivi Cruz went 5 for 5 with three doubles and two RBI for the Giants, who have won 13 of their past 14 home games to take the division lead for the first time since April 13. They trailed by eight games in May.

Milton Bradley tied it at 5 with a bunt single off winning pitcher Jim Brower (5-3) in the seventh.

Wilson Alvarez (2-3) allowed two hits in 11/3 innings, including a double to Barry Bonds.

Cruz tied the franchise record for most doubles in a game, done most recently by Ramon Martinez on Aug. 16, 2002. Cruz's five hits were a career high and the most by a Giants player since Tsuyoshi Shinjo also had five on July 2, 2002, at Colorado.

* CUBS 5, CARDINALS 2: Aramis Ramirez hit a two-out, two-run double in the eighth inning off Jason Isringhausen to give Chicago the road victory.

"He's an RBI guy," Cubs Manager Dusty Baker said. "He's had two 100-RBI years and he's getting better."

The Cubs have won nine of 10 to cut the Cardinals' NL Central lead to one game. The Cardinals have won 15 of 21, but lost their last two. They face the Cubs twice more in this series.

Jim Edmonds flied out to left for the final out of the game in his first pinch-hitting appearance of the season.

Kyle Farnsworth (3-3) got Edgar Renteria to ground out with runners on second and third for the last out in the seventh and then retired the Cardinals' Nos. 3, 4 and 5 batters, striking out Albert Pujols and John Mabry, in the eighth.

* ASTROS 5, PIRATES 4: Roy Oswalt pitched eight solid innings, Morgan Ensberg hit a tiebreaking triple in the seventh and host Houston came from behind for the second consecutive night.

Houston came from four runs down Monday to win 7-5.

Oswalt (5-6) allowed three runs, nine hits and did not walk a batter, sending Pittsburgh to its 10th straight road loss and fifth in a row overall. He struck out five.

* METS 7, REDS 4: Mike Piazza hit a go-ahead home run in the fifth inning and host New York won its season-high fifth straight.

In his first game since hitting his 500th homer, Ken Griffey Jr. went 1 for 5 with a single. He was mostly cheered by the crowd of 19,301, who showed up possibly hoping to see home run No. 501.

But it was the Mets who had the big hits, including Cliff Floyd's solo homer, in winning for the seventh time in eight games.

* MARLINS 4, BRAVES 3: Pinch hitter Lenny Harris walked and scored on a wild pitch in the seventh in Miami to snap Florida's three-game losing streak.

Johnny Estrada had four hits and three RBI for the Braves.

* EXPOS 5, PHILLIES 2: Livan Hernandez (4-7) doubled twice and got his first win in five weeks, leading Montreal at home.

Brad Wilkerson, who fell a triple short of his second cycle in two years, and Brian Schneider each had three hits for Montreal, which won its third in a row after a seven-game losing streak.

* BREWERS 6, ROCKIES 2: Javier Lopez broke a seventh-inning tie when he hit consecutive batters with the bases loaded, helping Milwaukee win at home on the night Larry Walker returned to Colorado's lineup.

Walker doubled in his season debut after missing the first 68 games with a strained left groin.

* PADRES 2, DIAMONDBACKS 1: Khalil Greene scored from second base when Scott Hairston botched a potential double-play ball with one out in the 10th inning in San Diego.

The Padres started the winning rally when Greene was hit by a pitch from Mike Koplove (2-2) leading off the inning. The rookie was sacrificed to second by pinch hitter Ramon Vazquez.