Insert from select and change case

I want to insert to a new table, the data selected from another table. easy enough but, the data to be copied is in UPPERCASE and I want its display in the new column to be Normal Case. United Kingdom instead of UNITED KINGDOM.

I don’t seem to be able to find a mysql function like UPPER() or LCASE() which can be NormalCase(). Is there one? currently my query is this

insert ignore into country ( three_char, country) 
( select distinct three_char_country_code
         , country_name 
    from ip_to_country


Oops, thanks rudy.

I must have been having a lazy moment. Job done now manualy since the table only had about 139 rows.


you know where the manuals for all the later versions are, right?

just look in the sections called String Functions


OK, blimey.

That’s beyond me for the time being so I may do this in perl.
I currently use MySQL 5.0.91 Is there a function yet built in to a later version that would so this simply?

I might get the server company to upgrade me to that version or later.

Thanks to you both for your reply.


strtolower looks like it changes everything to lower case, much like the mysql LOWER() function

bazz, you’ll have to write your own function for mysql

I’m not aware of one but if your server-side language is php, you could run the string that needs it’s case lowered through php’s strtolower function.