Alfonso Soriano was just trying to put the ball in play. Instead, he knocked the 552nd pitch over the fence to end the longest major league game of the season.

Soriano's two-run homer in the 18th inning yesterday gave the Texas Rangers a 9-7 victory over the visiting Seattle Mariners.

"It was important to win this game," Soriano said. "It's an amazing win."

The Rangers overcame an early 5-1 deficit and tied the game at 7 on Mark Teixeira's RBI single in the ninth. They also got 112/3 scoreless innings from their last six relievers.

"They gave us opportunity after opportunity going out there and putting up zeros on the board," said catcher Rod Barajas, who hit two solo homers. "It took us awhile to finally capitalize on what they were doing."

It was the longest big-league game since the St. Louis Cardinals won, 7-6, in 20 innings at Florida on April 27, 2003. It matched the longest game in Rangers history, but Seattle has twice played 20-inning games.

Soriano hit his 10th homer of the season to left off Jamie Moyer (6-3). Hank Blalock led off the 18th with a single, his third hit in nine at-bats.

The game lasted 5 hours 47 minutes -- 43 minutes longer than the first two games of the series combined.

* DEVIL RAYS 19, BLUE JAYS 13: A day after its club-record 12-game winning streak ended, Tampa Bay set team records for runs and hits in routing the Blue Jays in Toronto.

Jose Cruz Jr., Carl Crawford and Geoff Blum homered for the Devil Rays, who finished with 24 hits, three more than their previous mark, set at Boston last July 24. The old club record for runs was 15.

Julio Lugo went 5 for 7 to set a team record for hits, and Tampa Bay tied its record with 11 walks.

* ATHLETICS 2, ANGELS 1: Mark Mulder matched his career best by winning his seventh straight decision, and Jermaine Dye hit a two-run homer for visiting Oakland.

Mulder (9-2) pitched his major league-leading fourth complete game, allowing four hits. He struck out four and walked three as Oakland gained a split of the four-game series.

* TWINS 4, RED SOX 3: In Boston, Lew Ford hit a sacrifice fly following a two-base error by shortstop Nomar Garciaparra in the 10th inning, lifting Minnesota.

Keith Foulke (2-1) started the 10th by getting Cristian Guzman to hit a hard grounder up the middle. Garciaparra raced over from shortstop and fielded it, then spun around and fired the ball past first baseman Kevin Millar into the Boston dugout.

Guzman took third on Jose Offerman's sacrifice, then scored on Ford's fly to left.

* WHITE SOX 7, INDIANS 1: Jose Valentin hit a three-run homer in the first inning and host Chicago tacked on four runs in the eighth to help Jon Rauch become the first No. 5 starter to win this year for the White Sox.

Chicago's fifth starters had been 0-8 this season before Rauch (1-1) limited the Indians to one run in five innings.

* TIGERS 12, ROYALS 3: Ivan Rodriguez had three doubles, a single and four RBI to help visiting Detroit stop a five-game losing streak.

Rodriguez was 4 for 5 and raised his league-leading average to .373 with his fourth four-hit game of the season.