Here's a contrived example:
At the user creation page the malicious user wants to get admin access.
They have their username be: admin' --
They do this because they are betting on a user named 'admin'.
Their password is: alwaysSanitizeInputs
So, a user is created named "admin' --".
Now, they go in to update their password.
The DB nicely pulls out their username, "admin' --", and it says:
UPDATE users SET password = SHA1('newPassword') WHERE username = 'admin' -- AND password = SHA1('alwaysSanitizeInputs');
So what happens? Well, the user "admin" now has a different password, and the Malicious user knows what it is. That's why you still need to sanitize.