user1978752
user1978752

Reputation: 41

Take email value from table in query

I'm trying to replace all avatars with an avatar generator. The avatars get generated by putting your email address in the URL.

(I've tried searching but resulted in no solution. That may be because I don't really know what to exactly search for. I hope you can help me out by either linking me an existing thread or simply giving an answer.)

My current table has 2 columns, avatars and email

I want to replace all avatars hello.jpg with //avatar.com/emailadress.png

How can I put the users email value in the replacement query? I'm using MySQL as DMBS.

This is my current query. UPDATE members SET avatar = REPLACE(avatar, 'hello.jpg', '//avatar.com/%.png')

% Would be the value of the email adress.

Thank you!

Upvotes: 1

Views: 37

Answers (1)

Donal
Donal

Reputation: 32713

You can just simply concatenate in the value of the email column to the second parameter of REPLACE:

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

If you want to test it before updating the column. Have a look at the output of this:

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

Upvotes: 1

Related Questions