MySQL ejecuta prácticamente todas las comparaciones de cadenas en la intercalación predeterminada ... excepto el comando REPLACE
. Tengo una intercalación insensible a mayúsculas y minúsculas y necesito ejecutar un REPLACE
insensible a mayúsculas y minúsculas. ¿Hay alguna forma de forzar REPLACE
para usar la intercalación actual en lugar de hacer siempre comparaciones de mayúsculas y minúsculas? Estoy dispuesto a actualizar mi MySQL (actualmente en ejecución 5.1) para obtener la funcionalidad añadida ...Insensible a mayúsculas ¿REEMPLAZAR en MySQL?
mysql> charset utf8 collation utf8_unicode_ci;
Charset changed
mysql> select 'abc' like '%B%';
+------------------+
| 'abc' like '%B%' |
+------------------+
| 1 |
+------------------+
mysql> select replace('aAbBcC', 'a', 'f');
+-----------------------------+
| replace('aAbBcC', 'a', 'f') |
+-----------------------------+
| fAbBcC | <--- *NOT* 'ffbBcC'
+-----------------------------+
I necesidad de preservar el caso de que el resto no sustituido de la cadena original, por lo que no. – dkarp
UPDATE repSchedule SET Email = REPLACE (INFERIOR (correo electrónico), '@ xyz.com', '@ xxyyzz.co.uk') – zzapper
¡La función en el enlace es lo que necesitaba! ¡Gracias! –