Home » Mysql » MySQL query to replace spaces in a column with underscores

MySQL query to replace spaces in a column with underscores

Posted by: admin November 30, 2017 Leave a comment

Questions:

I have a MySQL database table ‘photos’ with a column ‘filename’.
I need to replace the spaces in the filename column values with underscores.
Is it possible with a single/multiple query? If so how?

Answers:

You can use the REPLACE function :

REPLACE(str,from_str,to_str)

Returns the string str with all
occurrences of the string from_str
replaced by the string to_str.

REPLACE() performs a case-sensitive
match when searching for from_str.

So, to replace all occurences of a character by another one in all lines of a table, something like this should do :

update photos set filename = replace(filename, ' ', '_');

ie, you search for ‘ ‘ in the column filename and use ‘_’ instead ; and put the result back into filename.

Questions:
Answers:
update photos set filename = replace(filename,' ', '_');