Cita: El ordenador no puede ser adivino y yo solo tengo la id del usuario por lo que tendría que buscar una fila con esa id y añadir esa URL en la columna de "img_perfil". Mientras que lo que haría UPDATE sería buscar una URL que coincida con la URL actual y remplazarla... cosa que no quiero. Yo quiero que con la id del usuario, ponga en la columna de "img_perfil" la URL...
La verdad no se termina de entender tu problema...
Si tienes el ID del usuario, con eso alcanza y sobra. El DBMS se encarga del resto a partir de la sentencia de SQL... El cómo, es total y absolutamente irrelevante, porque no tienes ni por qué saber cómo resuelve eso MySQL. Simplemente debes saber usar el la consulta adecuada y listo.
En tanto se cumpla como condición que el usuario esté correctamente identificado por su clave primaria (el ID en este caso), y que tal clave cumpla con las condiciones de unicidad y no nulidad, el sistema hará la opreación correspondiente.
Ahora bien, si ese ID no está definido como PK, y es repetible, entonces lo que tienes es un enorme conjunto de datos basura (no te ofendas, así se les llama), que nunca te servirá para nada. Al menos no sin depurarlo.
Resumiendo tu duda, si tienes el ID del usuario en cuestión,
tú no eres el que busca la fila donde está, eso lo hace el MySQL, porque para eso se diseñó el proceso invocado por el UPDATE. Y para eso sólo se requiere que la query quede armada, luego de incrustado ese valor de las variables, como:
¿Te queda claro eso?
Si esto no responde tu duda, es que no la estás exponiendo clara y concisamente, o no estás entendiendo lo que es SQL. Y allí sólo te queda estudiar...