×

ST. LOUIS (AP) — Kwang Hyun Kim tossed six shutout innings, Tyler O’Neill and Paul Goldschmidt homered and the St. Louis Cardinals beat the San Francisco Giants 3-1. Kim, with his wife and two children in attendance in the United States for the first time, has not allowed a run in his last 21 innings, covering three starts. O’Neill hit his 16th homer of the season leading off the second inning, and Goldschmidt added a two-run shot in the fifth. Despite the loss, San Francisco has the best record in the majors at 58-33. The Cardinals have won eight of their last 10 games at home against the Giants. Goldschmidt had three hits and extended his hitting streak to 12 games.

Elsewhere in the MLB:

— The Chicago White Sox finally picked up a win over the Houston Astros.

Lucas Giolito (jee-oh-LEE’-toh) pitched a three-hitter and José Abreu (ah-BRAY’-oo) launched a three-run homer as the White Sox trounced the Astros, 10-1.

Tim Anderson, Zack Collins, and rookies Gavin Sheets and Jake Burger also went deep. The White Sox broke out against the Astros after dropping the first five games in the season series by a combined 34-9 score. Houston’s lead in the AL West remains 3 1/2 games over Oakland. The White Sox still pace the AL Central by eight games over Cleveland. The Indians won for the fourth time in five games by defeating the Athletics, 3-2 in Oakland. Franmil (FRAHM’-meel) Reyes crushed a home run 437 feet into a luxury suite in center field of the Coliseum. Cal Quantrill picked up his second straight victory by limiting the A’s to one run over five innings.

— The Yankees had dropped eight straight to the Red Sox before rain helped New York pull out a 3-1 victory. The game was called after six innings following homers by Gary Sanchez and Gleyber (GLAY’-bur) Torres in the sixth.

— Robbie Grossman smacked a leadoff homer and four Tigers pitchers combined on a two-hitter in Game 1 of a doubleheader, a 1-0 victory over the Twins. José Ureña started for the Tigers and pitched three innings of two-hit ball before departing due to right groin tightness.

— The Tigers completed the sweep by downing the Twins, 5-4 on an RBI single by Miguel Cabrera in the bottom of the eighth. The Twins scored in the eighth to take the lead, but Jonathan Schoop (skohp) tied it with an RBI single before scoring the winning run.

— The Orioles’ five-game losing streak is over after Ryan Mountcastle and Ramón Urias each had two RBIs in their 8-4 win over the Royals. The Birds got six consecutive hits in a five-run third inning as they chased starter Brady Singer and opened a 7-0 lead.

— The Angels rolled to a 9-4 rout of the Mariners as David Fletcher went 3-for-5 with five RBIs. Taylor Ward and Jack Mayfield homered for Los Angeles.

— Christian Yelich (YEH’-lihch) doubled home the tiebreaking run while the Brewers scored three times in the 11th to beat the Reds, 7-4. Yelich had two RBIs and Willy Adames (ah-DAH’-mehs) had three hits as Milwaukee stretched its lead in the NL Central to six games over Cincinnati.

— Wilsson Contreras belted a two-run homer to cap a three-run ninth that pushed the Cubs past the Diamondbacks, 4-2. The Cubs were down to their final out trailing 2-1 when Rafael Ortega doubled and scored on a single by pinch-hitter Robinson Chirinos.

— The Giants’ five-game winning streak is over after Kwang Hyun Kim tossed six shutout innings to lead the Cardinals’ 3-1 decision over San Francisco. Tyler O’Neill and Paul Goldschmidt homered to back Kim, who hasn’t allowed a run in 21 innings covering three starts.

— Max Muncy homered in his last two at-bats and was 4-for-5 with five RBIs as the Dodgers clobbered the Rockies, 9-2. Walker Buehler (BYOO-lur) pitched seven strong innings to move to 10-1, setting down the last 13 batters he faced.

— Jacob Stallings’ grand slam in the bottom of the ninth inning off closer Edwin Díaz completed the Pirates’ stunning rally in a 9-7 win over the Mets. J.D. Davis hit a pair of two-run homers and rookie starter Tylor Megill pitched six scoreless innings before leaving the game with a 6-01 lead.

— Joc Pederson slammed a two-run homer in his first start as a Brave to help them clobber the Rays, 9-0. Max Fried (freed) had a two-run double among his three hits while throwing seven dominant innings.

— The Marlins and Phillies were suspended by rain in Philadelphia with the game tied 2-2 in the top of the 10th. The Phillies appeared headed to their ninth win in 13 games before the Marlins tied it with a pair of runs in the ninth off Ranger Suárez. The game will resume on Sunday.

— The Blue Jays-Rangers game in Buffalo was postponed by rain and will be made up as part of a Sunday twinbill.