SAN DIEGO -- Carlos Silva has been looking for this kind of start since April.
"I haven't won in over two months already so I was waiting for this kind of game, especially for me, I want to get in the group, too," Silva said. "We've been playing good lately and you want to be part of the team, too."
Adrian Beltre had three hits and two RBIs for the Mariners, who won for the fourth time in five games but still have the worst record in the majors, 30-50.
The Padres lost their season-high seventh straight game and for the 12th time in 14 games, all against the AL. They dropped to 3-14 in interleague play, worst in the majors. At 32-50, they're tied with the Washington Nationals for the second-worst mark in the bigs.
Silva (4-9) snapped his career-high nine-game losing streak, the longest in the majors this season. He hadn't won since April 17, when he improved to 3-0 by beating Oakland 8-1. He came in having lost his last seven starts and nine of 10.
"He's a pro. He's got his pride, you know?" Mariners manager Jim Riggleman said. "His pride has been hurt a little bit. He's competed every time. A lot of times it was a bad first inning or two and he'd settle down and get three or four good innings. Tonight he was able to put it together longer and hold it.
"I think it was important for him. A lot of losses, some tough ones, but he knew he was better than that and hopefully this will be the beginning of something good for him."
Silva allowed two runs and eight hits in seven innings. He kept the Padres scoreless until the seventh, when pinch-hitter Tony Clark hit a two-run single up the middle with two outs to pull San Diego to 4-2.
Brandon Morrow pitched the ninth for his fourth save in as many chances.
Baek (1-3), obtained in a trade with the Mariners on May 28, was pulled after the first four batters reached base in the sixth. After Baek loaded the bases by allowing two singles and a walk, Beltre beat out an infield single to score Jose Lopez for a 3-0 lead and chase Baek. Bryan Corey got the first out, then allowed Jeff Clement's sacrifice fly.
Beltre and Jeremy Reed had consecutive RBI doubles with two outs in the fourth.
Baek allowed four runs and eight hits, with five strikeouts.
"It's my old team. I tried my best, but they hit well," Baek said.
The Padres continue to lack big hits.
"Tonight we got our hits but we couldn't bunch the hits together," manager Bud Black said. "This has been a trying time for us. It's been a test. A lot of clubs go through this. Our starting pitching is holding its own. We just have to get the offense going."
The Padres had 10 hits, one more than the Mariners.
"It would be one thing if we were always getting one, two or three hits," Clark said. "But you get 10 hits and you're putting the ball in play and giving yourself a shot. We just have to do it at the right time."
The Padres are on their longest losing streak since dropping eight straight July 17-26, 2005. ... San Diego RHP Chris Young threw a simulated game Saturday, the latest step in his comeback from a broken nose and fractured skull sustained when he was hit in the face by Albert Pujols' line drive on May 21. The 6-foot-10 Young, who was an All-Star last year, threw about 45 pitches over three innings. The next step for Young is to have surgery on Monday to repair his septum so he can breathe through his nose again. He hopes to rejoin the rotation after the All-Star break. ... Seattle's Erik Bedard, scratched from his scheduled start Wednesday after leaving his previous outing with back spasms, is scheduled to start in the series finale on Sunday against reigning NL Cy Young Award winner Jake Peavy. ... The Mariners said ace Felix Hernandez, who hurt his ankle at Shea Stadium on Monday -- the same night he hit a grand slam off Johan Santana -- will not start Tuesday against Toronto at home.