As absolutely suitable for self study I would recommend:
Quite good and filled with the kind of exercises that help the language really sink in. Also the OS X installation process for SML/NJ has recently become quite simple.
One big difference between OCaml and SML is that ocamlopt makes it dead simple to create executables for a wide variety of platforms, and that is not so easy w/ SML/NJ.
Get dozens of book recommendations delivered straight to your inbox every Thursday.