James Shields pitched a one-hitter to steer the Tampa Bay Rays to a 2-0 victory over the Los Angeles Angels in the American League on Friday. Evan Longoria's two-run, ninth-inning homer snapped a scoreless tie. Shields rebounded from the second-shortest outing of his career to post his second shutout in his past three starts. The 26-year-old right-hander limited the Angels to a single in the third and retired the last 17 batters he faced after hitting a batter with a pitch in the fourth. Longoria's winning homer was only his fourth in the majors. Twins 7, Red Sox 6: In Minneapolis, struggling Mike Lamb hit a two-run single in the bottom of the ninth to give Minnesota a win over Boston. Lamb, who entered the game to replace an injured second baseman, was averaging only .207 for the season before hitting Jonathan Papelbon's two-out 1-2 pitch for the game winner. Papelbon has blown consecutive save opportunities. Rangers 4, Athletics 0: In Arlington, Texas, the home side posted its third straight shutout to end Oakland's four-game winning streak. Scott Feldman pitched six innings and then the bullpen combined to extend Texas' pitchers' scoreless streak to 31 in a row. The last time a major league team had three consecutive shutouts was Florida in 2005. Minnesota was the last American League team to accomplish that feat, in 2004. Other results: Indians 6, Blue Jays 1, Tigers 6, Yankees 5; Orioles 7, Royals 4; White Sox 4, Mariners 2. Milwaukee tastes win A bases-loaded single with two outs in the bottom of the ninth gave Milwaukee a 4-3 victory over the St. Louis Cardinals on Friday in the National League, snapping the Brewers' six-game losing streak in style. After looking lethargic most of the game, the Brewers came alive after the Cardinals recorded two outs on the first two pitches of the ninth. A single, a blooper to right field and a walk loaded the bases, and Rickie Weeks hit the two-run single to left field to win the game. Astros 7, Dodgers 1: In Los Angeles, Brian Moehler pitched five scoreless innings to steer Houston past Los Angeles. Lance Berkman went 3-for-4 with a home run for the Astros. Moehler, filling in due to injuries, allowed five hits and a walk while striking out five. He has spent the majority of his big league career as a starter, though had been used exclusively in relief since rejoining Houston last year. Berkman, who doubled and scored in the first, made it 6-0 in the fifth with his 12th homer, a two-run shot to right. The Astros' switch-hitting first baseman has six straight multihit games. Other results: Phillies 7, Giants 4; Cubs 3, Diamondbacks 1; Rockies 4, Padres 2; Pirates 3, Braves 2; Marlins 7, Nationals 3.