Cita: tengo un problema con un codigo, quiero insertar datos con el clasico INSERT INTO pero con una condicional de WHERE, pero creo que eso no puede hacer
No, no se puede, porque un INSERT es una sentencia incondicional, y no tiene ninguna cláusula WHERE. Si la pusieras te daría un error de sintaxis.
Cita: y yo lo que quiero es insertar datos asi con una condicinal donde sea el usuario tal...
Eso no es
insertar, sino
actualizar (UPDATE).
No es lo mismo.
Si lo que quieres es insertar algo si no existe, son dos consultas,
una para la validación y
otra para la inserción.