Problema:
Le gustaría ordenar el resultado de una consulta SQL en orden ascendente o descendente.
Ejemplo:
Nuestra base de datos tiene una tabla llamada customer_information con datos en las columnas id , first_name , last_name y email_address . Los usuarios completaron manualmente las direcciones de correo electrónico y algunas se ingresaron con espacios innecesarios por accidente. Desea eliminar los espacios de las direcciones de correo electrónico.
| id | nombre | apellido | dirección_de_correo |
|---|---|---|---|
| 1 | Calvino | Ríos | rios.calvin@example.com |
| 2 | Alan | Paterson | al an.paterson@example.com |
| 3 | Kurt | Evans | kurt.evans@ejemplo.com |
| 4 | Álex | Watkins | Álex. watkins@ejemplo.com |
Solución:
Usaremos el REPLACE función. Aquí está la consulta:
SELECT first_name, last_name, REPLACE(email_address, " ", "") AS correct_email_address FROM customer_information;
Aquí está el resultado de la consulta:
| nombre | apellido | dirección_de_correo |
|---|---|---|
| Calvino | Ríos | rios.calvin@example.com |
| Alan | Paterson | alan.paterson@example.com |
| Kurt | Evans | kurt.evans@ejemplo.com |
| Álex | Watkins | alex.watkins@ejemplo.com |
Discusión:
Usa el REPLACE función si desea reemplazar todas las apariciones de una subcadena en una cadena dada. En nuestro ejemplo, reemplazamos espacios innecesarios con valores vacíos.
Esta función toma tres argumentos. A continuación se ilustra la sintaxis de la función:
REPLACE(string_expression, substring, new_substring)
El primer argumento es la cadena que nos gustaría modificar. El segundo argumento es la subcadena que se reemplazará y el tercer argumento es la cadena que queremos usar en lugar de la subcadena reemplazada. Eliminamos los espacios no deseados en nuestro ejemplo, pero la función se puede usar para muchos propósitos. Por ejemplo, podemos querer limpiar y estandarizar una columna de números de teléfono. Podemos usar el REPLACE función para hacerlo.
Si desea eliminar más de un carácter de una cadena dada, simplemente anide el REPLACE funcionar por segunda vez. Por ejemplo, si tiene una cadena con espacios y guiones innecesarios, puede usar la siguiente sintaxis:
REPLACE(REPLACE(string_expression, " ", ""), "-", "")
Recuerda que los argumentos de esta función en MySQL distinguen entre mayúsculas y minúsculas, así que ten cuidado con las letras.