Glendon Rusch pitched eight strong innings, Moises Alou drove in three runs and visiting Chicago beat Houston, 5-4, last night for its sixth straight win.

Corey Patterson had two doubles and a triple, and Derrek Lee drove two runs in Chicago's first four-game sweep of the Astros since 1967 and the first in Houston.

Rusch (4-1) allowed only two runs on four hits and struck out seven. LaTroy Hawkins gave up Jason Lane's first homer of the season -- a two-run shot -- in the ninth with two outs before finishing for his eighth save in 11 chances.

Roy Oswalt (4-6) allowed four runs on 11 hits and two walks in seven innings for the Astros, who have lost four straight and six of seven.

"If we don't pick it up, we'll be out of it before the all-star break," Oswalt said. "A slump is a slump. If we don't come out of it we'll be out of it before we get started."

* REDS 4, RANGERS 3: Ken Griffey Jr. failed to get his 500th homer, but host Cincinnati pulled off another late rally to complete a three-game sweep of Texas.

When Griffey caught Eric Young's fly in center field to end the game, he pointed to fans in left field, then the ones in right, before running off the field.

"They've been real supportive through this whole thing," Griffey said. "It was just my way of saying thank you."

Sean Casey had a pair of hits and a tiebreaking sacrifice fly in the seventh, a consolation prize for a capacity crowd that saw Griffey go 0 for 3 with a sacrifice fly.

* PHILLIES 6-4, TIGERS 2-5: Jason Michaels homered and drove in four runs, leading host Philadelphia past Detroit in the opener of a day-night doubleheader.

Brett Myers (5-3) allowed two runs -- one earned -- and four hits in seven innings, helping the Phillies win for the fifth time in seven games. He struck out five and walked one, winning for the fifth time in six decisions.

"Sometimes we're good. Sometimes we're not," Tigers Manager Alan Trammell said.

In the nightcap, Carlos Guillen's two-out RBI single in the 11th led Detroit to the split.

* ROYALS 10, BRAVES 4: Darrell May beat his former team for the first time and Desi Relaford went 3 for 5 with three RBI to lead visiting Kansas City.

The Royals improved their AL-worst road record to 9-21 with their second victory in a row.

Relaford homered for the first time this season, Carlos Beltran went 2 for 3 with a home run and Dee Brown added two RBI singles for Kansas City.

* MARINERS 6, BREWERS 3: Scott Spiezio hit a tiebreaking homer leading off the eighth for visiting Seattle.

Jolbert Cabrera homered and drove in three runs, and Randy Winn also connected for the Mariners.

* GIANTS 8, BLUE JAYS 5: Michael Tucker hit a tiebreaking triple in the eighth and host San Francisco completed a three-game sweep.

The winning rally was set up when pinch hitter Barry Bonds was intentionally walked leading off the eighth. Ray Durham beat out a bunt single, and both scored on Tucker's drive to center off Justin Speier (1-4).

"No matter what the situation is, [Bonds] finds a way to win," Giants reliever Matt Herges said. "He just changes the game, and that's one person. It's amazing."

* RED SOX 11, ROCKIES 0: Derek Lowe pitched four-hit ball for seven innings in the 25th shutout in Coors Field history, and David Ortiz drove in a career-high five runs to help Boston avoid a sweep. Ortiz hit his 14th homer in the seventh and Nomar Garciaparra had three hits for the Red Sox, who won for just the third time in nine road games.

"You're supposed to fail here, you're supposed to give up a lot of runs, you're supposed to give up hits," said Lowe, who hasn't allowed a run in 14 innings. "Maybe the weather helped. It was cold and rainy. I guess if you're going to have any chance of pitching well, it was today."

* PIRATES 5, ANGELS 2: Tike Redman and Jack Wilson homered in Pittsburgh's go-ahead seventh, and the Pirates beat Anaheim for Kris Benson's first home victory in more than a year.

"We didn't challenge Benson at all," Angels Manager Mike Scioscia said. "We let him breeze through a couple of innings and get his feet on the ground, and he pitched a terrific game."

* MARLINS 2, WHITE SOX 1: Pinch hitter Matt Treanor singled home the winning run with two outs in the 11th, and host Florida beat Chicago. Armando Benitez (2-0) pitched two scoreless innings for the win.

* METS 6, INDIANS 2: Mike Cameron hit his first home run since May 10, and five pitchers combined on a five-hitter to lead host New York. Jae Seo, battling to retain his spot in the Mets' starting rotation, worked four effective innings, allowing two hits and striking out six in a game delayed 1 hour 49 minutes by rain.

* TWINS 6, EXPOS 4: Matthew LeCroy hit his third pinch-hit homer in three at-bats this season, and visiting Minnesota rallied to beat Montreal for a three-game sweep. A discount tickets and hot dog promotion helped draw a crowd of 10,044. It was just the third time the Expos had a crowd of more than 10,000 in 18 games at Olympic Stadium this season.

* CARDINALS 5, ATHLETICS 4: Pinch hitter Reggie Sanders capped a three-run, ninth-inning rally with a game-winning single that gave host St. Louis a sweep of a three-game series between division leaders. The Cardinals have won 13 of 17.

* DIAMONDBACKS 6, YANKEES 1: Knuckleballer Steve Sparks allowed one run in seven innings and Juan Brito hit his first major league home run to help host Arizona. New York had a four-game winning streak snapped in losing for just the fourth time in 22 games and second in 19 interleague games dating to last season.

* DEVIL RAYS 4, PADRES 1: Fred McGriff hit his 493rd career home run and visiting Tampa Bay extended its franchise-record winning streak to eight.

The Devil Rays also swept consecutive series for the first time in their seven-year history. Before starting this trip, they beat Colorado three straight in Tampa.

Boston's Manny Ramirez is hit by a pitch during an 11-0 win over the Rockies. Derek Lowe pitched four-hit ball for 7 innings and David Ortiz drove in 5 runs.