Если вы хотите обновить только те строки, в которых ваше обновление не будет нарушать уникальное ограничение, вы можете использовать эту
UPDATE `table`
SET USERNAME= SUBSTR(USERNAME, 2, LENGTH(USERNAME))
WHERE USERNAME LIKE 'U%'
AND NOT EXISTS(SELECT 1 FROM `table` t WHERE t.USERNAME = SUBSTR(`table`.USERNAME, 2, LENGTH(`table`.USERNAME)) AND t.NAME = `table`.NAME);
Эта строка проверяет, есть ли строки с username
- name
пара, которую вы пытаетесь создать, уже существует, и если они это сделают, эта строка не обновляется
NOT EXISTS(SELECT 1 FROM `table` t WHERE t.USERNAME = SUBSTR(`table`.USERNAME, 2, LENGTH(`table`.USERNAME)) AND t.NAME = `table`.NAME)