Republican David Schweikert has won an eighth term in an affluent congressional district in the Phoenix area by fending off a challenge from a Democratic former state lawmaker.