If the new column isn't blank, then the have already logged in and you have the new hash, so verify against the new hash. As everyone logs into your website, you'll have a new set of, more secure, hashes. For those that are inactive you can either delete them, assign a random password and email them, or let their MD5 password hash sit there forever.
Over time, active users get their password upgraded.
Then after a longer time, just reset the passwords of the users who never logged in since you started migrating.
On signup store:
$password = password_hash(md5($password),PASSWORD_BCRYPT);
And on login: password_verify(md5($password), $password_hash);
Then you just have apply password_hash() on all you passwords in database.Bonus the migration is instantaneous, you don't need a 6 month transition period.
IMHO it do not reduce the security, but i'm not a crypto expert though.
So adding an extra md5 hashing is totally insignificant (in term of computation).