Ryne Nelson pitched seven innings allowing just two runs, and Gabriel Moreno, Lourdes Gurriel, Pavin Smith, and Geraldo Perdomo each drove in runs as the Arizona Diamondbacks defeated the Los Angeles Angels 4-3.