2014-09-08 2 views
1

Я пытаюсь заменить все аватары генератором аватара. Аватары генерируются путем размещения вашего адреса электронной почты в URL-адресе.Возьми по электронной почте значение из таблицы в запросе

(Я пробовал поиск, но не получил никакого решения. Возможно, это связано с тем, что я действительно не знаю, что именно искать. Надеюсь, вы можете мне помочь, связав меня существующей нитью или просто давая ответ.)

Моя текущая таблица имеет колонны, avatars и email

Я хочу, чтобы заменить все аватары hello.jpg с //avatar.com/emailadress.png

Как я могу поместить значение электронной почты пользователей в запрос на замену? Я использую MySQL как DMBS.

Это мой текущий запрос. UPDATE members SET avatar = REPLACE(avatar, 'hello.jpg', '//avatar.com/%.png')

% Будет ли значение адреса электронной почты.

Спасибо!

ответ

1

Вы можете просто сцепить в значении столбца электронной почты для второго параметра REPLACE:

UPDATE members SET avatar = REPLACE(avatar, 'hello.jpg', CONCAT('//avatar.com/', email, '.png')) 
WHERE avatar LIKE '%hello.jpg%'; 

Если вы хотите, чтобы проверить его перед обновлением колонки. Посмотрите на вывод этого:

SELECT REPLACE(avatar, 'hello.jpg', CONCAT('//avatar.com/', email, '.png')) 
from members 
WHERE avatar LIKE '%hello.jpg%'; 
+0

«Электронная почта» автоматически захватывает значение столбца? – user1978752

+0

Да, электронная почта - это значение столбца. Если вы не хотите запускать обновление, вы можете проверить это: SELECT REPLACE (аватар, 'hello.jpg', '//avatar.com/' + email + '.png') от членов – Donal

+0

Хмм. Я выполнил запрос, но он заменил все на 0? Есть идеи? Также спасибо за помощь, я чувствую себя такой глупой! – user1978752

Смежные вопросы