Unir dos campos en MySQL cortando por la izquierda y la derecha

Bienvenidos a VerTutoriales.com en esta ocasión y como algo bastante extraño, vamos a tomar varios caracteres de un lado y 5 del otro de una columna para meterla en otra columna nueva, todo ello utilizando MySQL

Aunque parezca extraño el procedimiento, no es más que una forma de solucionar los problemas que nos podemos encontrar día a día, quizás no sea la mejor solución y una revisión a mano sea al final la solución definitiva, pero al menos una gran cantidad de tiempo nos ayudará a ahorrarnos.

El hecho es que realizando una migración, necesitaba crear unas referencias de forma automática ya que el gestor Dk Web engloba diferentes productos utilizando una misma referencia y utiliza la subreferencia para la disgregación del conjunto, en otras palabras, puedo tener la referencia 1000 que es una camiseta y de subreferencia «roja, verde, azul» de manera que luego en la tienda puedas seleccionarla como un producto independiente.

Como decía, la migración traía una referencia única para cada artículo y no tenía ninguna relación directa con el producto que debiera ser el mismo, por lo que había que generar una nueva referencia automática y que diera como resultado un campo único.

¿Solución? Tomé los 5 primeros dígitos y los 5 últimos del campo de nombre: La consulta:

Update productos set ref = concat(LEFT(nombre, 5), RIGHT(nombre, 5))

 

No tiene más, utilizamos concat para unir los resultados del LEFT y RIGHT.

Espero que os sirva!

Carlos Dk

Apasionado por la enseñanza y el SEO

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.