En MySQL hay una forma de hacer esto de forma más sencilla para no tener que hacer un insert y un update, la consulta quedaría así:
Documentación sobre MySQL (insert into... on duplicate key update)
Y por cierto, hacer un "select
*" cuando sólo vás a usar un campo es una mala práctica, es mejor poner sólo los campos que necesitas.