The left-hander baffled the Athletics most of the afternoon, pitching into the eighth inning for his second consecutive win to help the San Diego Padres beat Oakland 2-1 on Sunday and avoid a three-game sweep.
It didn't come easily.
"He threw a great game," Padres manager Bud Black said. "He mixed in enough sliders, change (and) curveballs to keep them honest. But it was all about the fastball in good spots, throwing strikes and working fast."
San Diego continued to sputter on offense and again wasted multiple scoring opportunities. This time, the Padres had enough pitching to overcome it.
Oakland had two runners on in the second, fourth and sixth innings, but Richard (4-7) worked out of trouble each time to win for the second time in eight road starts this season.
Richard scattered five singles over 7 2/3 innings and struck out six. He was pulled after giving up Jonny Gomes' third hit.
"The command was definitely there and (catcher Nick Hundley) did the best job since we've been together," Richard said. "When that's taken care of you don't have to worry about what pitch to throw. It takes a lot of pressure off."
Everth Cabrera scored on a groundout in the second, and the Padres tacked on an insurance run in the ninth to salvage the finale of their nine-game road trip. San Diego is still 19 games under .500 and last in the NL West.
Gomes had three hits for the A's, who had won a season-high five straight.
"(Richard's) ball was running quite a bit, whether it was cutting or running," Oakland manager Bob Melvin said. "He made good pitches. Early on it was tough to see good swings. That shows his ball had late movement."
It was a tough afternoon all around for the A's.
After scoring 42 runs in the previous five games, Oakland managed only one -- and might have lost another starting pitcher to injury.
Bartolo Colon (6-7) left after 30 pitches with a strained muscle on his right side and is scheduled to undergo additional tests on Monday.
Colon pitched two hitless innings before allowing Cabrera's single in the third. Alexi Amarista followed with a sacrifice bunt that Colon fielded cleanly, but the pitcher threw wildly to first base, allowing Amarista to reach second while Cabrera raced to third.
As Colon walked back to the mound, Melvin and a team trainer came out to meet him. Following a brief discussion, Colon was removed from the game and replaced by Pedro Figueroa.
"When I stopped to get the ball, that's when I felt it," Colon said. "It felt bad and I knew I had to come out. I'll get an MRI on Monday and we'll see how it is."
Street, the former Oakland closer, struck out Brandon Inge to end the eighth and had to pitch out of a jam in the ninth after giving up an RBI single to Crisp. Street got out of it by striking out Weeks with a runner on third.
San Diego added an insurance run in the ninth when pinch-runner Logan Forsythe scored on a wild pitch by Oakland reliever Ryan Cook. Forsythe was running for Carlos Quentin, who doubled leading off the inning.
Before the game, the A's optioned RHP Tyson Ross back to the minors, one day after his spot start against San Diego. ... Quentin has been hit by pitches five times in 16 games this season, but Black doesn't think teams are intentionally throwing at the outfielder. ... The A's have an off day Monday and will send RHP Brandon McCarthy (5-3) to the mound for the opener of a three-game series with the Angels on Tuesday. ... RHP Jason Marquis (1-1) will make his third start for San Diego when the Padres return home Monday to host Texas.