CHICAGO -- Marcus Stroman pitched a one-hitter, and the Chicago Cubs beat the major league-leading Tampa Bay Rays 1-0 on Monday.
Stroman (5-4) dazzled in his fourth complete game and second shutout in nine major league seasons. His only other shutout was against the Cubs during his 2014 rookie season with Toronto. He set a season high with 105 pitches and matched his high with eight strikeouts. The right-hander walked one in winning his third straight start.
The only hit Stroman allowed was a clean single to left leading off the seventh by Wander Franco. The only other Rays runner to reach base was Luke Raley, who was hit by a pitch leading off the third.
The Cubs got their run in the fourth when Seiya Suzuki led off with a single, took second on a wild throw by third baseman Taylor Walls and scored on Mike Tauchman's sacrifice fly.
Rays rookie Taj Bradley (3-2) was a tough-luck loser in dropping his second straight start, allowing just one unearned run and three hits in 5 2/3 innings. The 22-year-old rookie right-hander struck out eight and walked one.
ROYALS 7, CARDINALS 0
ST. LOUIS -- Josh Staumont and Mike Mayers came within six outs of the first combined perfect game in major league history before Nolan Arenado lined a leadoff single in the eighth inning of Kansas City's win over St. Louis.
Staumont, a 29-year-old right-hander, served as the opener in a planned bullpen game for the Royals. He made his first major league start in his 167th appearance and struck out two in a 1-2-3 inning, throwing 14 pitches.
Mayers, a 31-year-old left-hander, made his third appearance for the Royals this season after eight starts at Triple-A Omaha. He retired 18 consecutive batters before Arenado lined a 1-0 slider to left on his 72nd pitch.
The Royals tied their season high with 16 hits. Nicky Lopez matched his career high with four hits, and Nick Pratto and Vinnie Pasquantino had three each. Mike Massey hit a two-run homer and Bobby Witt Jr. added a solo homer.
Adam Wainwright (2-1) allowed three runs and nine hits in five innings for the Cardinals, who were shut out for the sixth time.
GUARDIANS 5, ORIOLES 0
BALTIMORE -- Logan Allen allowed three hits in seven strong innings, and Cleveland broke through for four runs in the seventh on the way to a victory over Baltimore.
Will Brennan had three hits for the Guardians, who have won three of four. Allen (2-2) struck out a career-high 10 in his seventh big league start. The rookie left-hander also set career marks for innings pitched and fewest hits allowed -- and this was his first scoreless outing.
Enyel De Los Santos and Trevor Stephan finished a five-hitter, Cleveland's fifth shutout this season.
Tyler Wells (3-2) allowed a run and four hits in six innings, striking out seven without a walk.
DIAMONDBACKS 7, ROCKIES 5
PHOENIX -- Pavin Smith hit a go-ahead, three-run homer, Drey Jameson threw 3 2/3 innings of impressive relief in his return to the big leagues and Arizona rallied from a four-run deficit to beat Colorado.
The Diamondbacks erased a 4-0 deficit with five runs in the second inning, punctuated by Smith's three-run homer. Jake McCarthy had a two-run single earlier in the rally. Arizona starter Ryne Nelson (2-2) gave up five runs on eight hits and three walks over five innings, striking out one.
Colorado's Ryan McMahon homered in his fourth consecutive game. He had four hits and finished a double short of the cycle. Ezequiel Tovar added a two-run double Rockies starter Karl Kauffmann (0-3) gave up seven runs on nine hits and two walks over four innings, striking out one.
GIANTS 14, PIRATES 4
SAN FRANCISCO -- Rookie Patrick Bailey had four RBIs on his 24th birthday as San Francisco routed Pittsburgh, which slipped under .500 for the first time since the opening weekend of the season.
Bailey, playing his ninth big league game, hit a go-ahead, two-run double against Rich Hill (4-5) in a five-run second inning. He added a two-run homer in an eight-run seventh.
Austin Slater hit a two-run homer in the second and a two-run double in the seventh as the Giants won for the 11th time in 14 games -- and for the 14th time in 19 home games.
Bailey and Casey Schmitt each had three of the Giants' 18 hits, as did Slater, Brandon Crawford and Mitch Haniger.
Jack Suwinski hit two solo homers into McCovey Cove off Anthony DeSclafani (4-4) and Brett Wisely, a position player who pitched the ninth, as the Pirates have lost 19 of 25 games after a 20-8 start.