Volquez (8-9) broke a personal three-start winless streak, yielding just one run on five hits while walking three.
Brad Brach and Luke Gregerson hurled a combined 1 1/3 scoreless relief frames and Dale Thayer collected his seventh save as San Diego defeated the Pirates for the 13th time in 16 meetings.
Will Venable supplied a pair of run-scoring singles and Everth Cabrera went 3-for-5 with a run scored for the Padres, who took the opener of a three-game set.
Bucs starter Kevin Correia (9-8) was saddled with the loss, surrendering three runs (two earned) on seven hits in a 4 1/3-inning effort.
Neil Walker had the only RBI for wild-card contender Pittsburgh, which was coming off a 19-inning win over St. Louis Sunday.