MIAMI -- Rookie Austin Riley and the Atlanta Braves made the most of their hits, thanks to Julio Teheran and a trio of relievers.
Teheran pitched six sharp innings and Riley scored the only run, lifting the Braves over the Miami Marlins 1-0 on Saturday.
Riley gave extra effort for a leadoff double in the seventh against Trevor Richards. Riley's hard grounder glanced off the glove of shortstop Miguel Rojas and rolled into the outfield.
"I just hustled and then once I saw it get through I maybe knew I had a chance and heard 'go, go, go, go,' and I was going," Riley said.
Riley took third on a flyball and scored on Tyler Flowers' sacrifice fly.
The Braves won despite getting only three hits and improved to 5-0 this season at Marlins Park. Miami, which was shut out for the 11th time this season, had just four hits.
Atlanta had outscored the Marlins 26-6 in the previous four wins in Miami.
Teheran (4-4) gave up two hits and struck out five. He has not allowed more than one earned run in each of his last seven starts.
"(Teheran) was great again. I'm just glad we got him a win ... he was awesome," Atlanta manager Brian Snitker said.
Teheran wasn't thinking about the pitchers' duel but on being effective when the Marlins threatened in the third and sixth innings.
"I know there were a couple of situations where I got runners on bases, but I keep my faith," Teheran said. "That was something big and I was happy that I got the win, obviously."
Luke Jackson recorded four outs for his ninth save. With two outs and runners at the corners in the eighth, Miami's Brian Anderson hit a slow roller to third base and was out in a close play — a replay confirmed the call.
Richards (3-6) gave up two hits in seven innings. He had won three straight decisions and suffered his first loss since starting the season 0-5.
"I think I've been able to attack the hitters a little bit better and locate better (since the poor start)," said Richards, who did not allow a hit until Freddie Freeman singled with two outs in the sixth inning.
Back on May 4 in his previous outing against Atlanta, Richards gave up just two hits in 4 2/3 shutout innings. He remains winless in three career starts against the Braves.
Miami manager Don Mattingly was impressed with his starter, who needed only 15 pitches over the first two innings against the potent Atlanta lineup.
"I thought he did a really nice job with that club," Mattingly said. "It's all about us getting that key out or that key hit and today we just weren't able to do it."
The Marlins teamed up for an unusual play to get the last out in the third. Ozzie Albies was on second when Ronald Acuna Jr. hit a grounder that bounced off Anderson's glove at third base. But the ball caromed to Rojas, and he quickly tossed it back to Anderson to tag out Albies.
THE NEW GUY
Freddie Freeman is thrilled over newly signed LHP Dallas Keuchel. Freeman called the addition "a huge boost for our team ... It's pretty evident that our front office wants to win and so do we."
The Milwaukee Brewers recently took some shots at the Marlins on Twitter after former Miami standout Christian Yelich homered against his former team on June 6.
"It seemed pretty petty," Mattingly said. "You never know three years (down the road) what that trade looks like," Mattingly said. "It wasn't like we were getting tricked; we knew what we were doing."
Albies shattered his bat in the seventh inning, and the barrel flying over the Braves' dugout at high speed before being stopped by the protective netting.
Braves: RHP Darren O'Day (right forearm strain) has been transferred to the 60-day injured list in a move to open a spot on the 40-man roster for Dallas Keuchel. The veteran O'Day has been sidelined since suffering the injury while making his spring debut on March 1.
Marlins: RHP Julian Fernandez has been shut down from throwing after recently experiencing right elbow discomfort as he continues to recover from Tommy John surgery back in April of 2018. Fernandez had been participating in live batting practice prior to the latest setback.
Braves: LHP Max Fried (7-3, 3.68) did not face Miami last season and is making his first start against the Marlins in 2019. He is coming off a rough outing in Pittsburgh where he surrendered all five runs on nine hits in four innings.
Marlins: RHP Pablo Lopez (4-5, 4.52) last went up against Atlanta on May 5 in Miami and, in a 3-1 loss, posted six shutout innings while allowing only three hits. He is 2-1 overall with a 1.84 ERA at home.
More AP MLB: https://apnews.com/MLB and https://twitter.com/AP—Sports