Mets outfielder Carlos Beltran, Detroit second baseman Placido Polanco and Los Angeles Dodgers catcher Russell Martin also won both awards.
The Silver Sluggers are presented by Louisville Slugger to the best offensive players at their position in each league. Managers and coaches vote for the awards.
Alex Rodriguez won his ninth Silver Slugger after leading the majors with 54 home runs and 156 RBIs for the New York Yankees. He won for the second time as a third baseman; his other seven awards came at shortstop.
Rodriguez tied former Cincinnati shortstop Barry Larkin for the third place on the all-time Silver Slugger win list. Barry Bonds (12) and Mike Piazza (10) have won the most often since the awards were first presented in 1980.
Angels outfielder Vladimir Guerrero won for the seventh time overall and Boston designated hitter David Ortiz (.332, 35 HRs, 117 RBIs) won for the fourth straight year. Arizona pitcher Micah Owings (.333, 4, 15) won for the first time.
Other winners included: first basemen Prince Fielder of Milwaukee and Carlos Pena of Tampa Bay, second basemen Chase Utley of Philadelphia, shortstop Derek Jeter of the Yankees, catcher Jorge Posada of the Yankees and outfielders Magglio Ordonez of Detroit, Matt Holliday of Colorado and Carlos Lee of Houston.