The difference between SCJA and SCJP is the difference between broad and deep.
SCJP goes extremely deep into syntax. You need to know all of the little nuances of the language, from overriding classes without a non-default constructor, to how polymorphic method invocations will pan out on classes within a complex hierarchy. Throw in some threads and file writers, and you've got yourself the SCJP exam. You really need to know the Java language inside and out to do well on the SCJP, and on the exam any little or peculiar nuance of the language is fair game.
SCJA doesn't got that deep. You definitely need to understand the basic syntax of the language, and understand flow control and conditional logic statement, but you're not going to get hammered with intricate details of the language. However, SCJA tests you on a much broader area of knowledge, and I think that is one of the great virtues of the cert. An SCJP is never tested on JSPs, Midlets, J2ME concepts, EJBs,
Servlets, Messaging, etc. SCJA DOES! You don't need to know all the intimate details about EJBs or J2ME, but you do need to know what their role is in enterprise development, and how they fit into the big picture. To be honest, I don't want to even look at a potential applicant if they don't have that type of broad knowledge of Java technology.
Many people get thrown off by the broad selections of topics, and that's understandable. But if you understand the big picture, you'll do really well on the SCJA exam.
-Cameron McKenzie