Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Ubicar campos en MySQL con caracteres similares

Estas en el tema de Ubicar campos en MySQL con caracteres similares en el foro de Mysql en Foros del Web. Buenas,Mi base de datos la gestiono con PhpMyAdmin. Tengo dos campos ("Categorias" y "Correo") en la base datos -que se llama "prueba"-. Quiero delimitar las ...
  #1 (permalink)  
Antiguo 03/05/2009, 14:13
Avatar de Daam  
Fecha de Ingreso: octubre-2007
Ubicación: Planeta Tierra
Mensajes: 152
Antigüedad: 16 años, 6 meses
Puntos: 0
Pregunta Ubicar campos en MySQL con caracteres similares

Buenas,Mi base de datos la gestiono con PhpMyAdmin.

Tengo dos campos ("Categorias" y "Correo") en la base datos -que se llama "prueba"-.

Quiero delimitar las categorias ya que actualmente hay más de 400 entradas distintas. Algunas se llaman -por ejemplo-: "Miami1", "Miami2", "Miami3". Quiero modificar su nombre por Miami.

Las entradas en el campo Categorias tienen en común las siglas "Miami"..., lo que quiero es hacer una consulta en sql que me seleccione todas las entradas que tengan en común parte del texto de las entradas.

Usé la siguiente consulta:

Código PHP:
SELECT FROM joomla
WHERE Categorias
='Miami1' 
Pero -evidentemente-, sólo me hace una selección limitada.

¿Qué puedo hacer?
__________________
"Si apuntas hacia las estrellas, puede ser que no alcances alguna, pero no terminarás con las manos llenas de lodo."
  #2 (permalink)  
Antiguo 03/05/2009, 14:45
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Ubicar campos en MySQL con caracteres similares

quieres sólo mostrar todas las que tengan Miami
busca así
SELECT * FROM joomla WHERE Categorias LIKE "Miami%"

o así
SELECT * FROM joomla WHERE LEFT(Categorias,5)= 'Miami'
  #3 (permalink)  
Antiguo 03/05/2009, 16:21
Avatar de Daam  
Fecha de Ingreso: octubre-2007
Ubicación: Planeta Tierra
Mensajes: 152
Antigüedad: 16 años, 6 meses
Puntos: 0
Muchísimas gracias, me funcionó. Sólo tuve que agregarle el "%" antes de la palabra también y todo listo.

Ahora estoy buscando la manera de modificar esos resultados por "Miami". Creo que la cosa va por el operador "UPDATE"....

Es decir, la pregunta es: ¿cómo aplicar el operador UPDATE O REPLACE en base a los resultados que obtengo al aplicar la sentencia anterior¡
__________________
"Si apuntas hacia las estrellas, puede ser que no alcances alguna, pero no terminarás con las manos llenas de lodo."

Última edición por GatorV; 03/05/2009 a las 17:35
  #4 (permalink)  
Antiguo 03/05/2009, 17:39
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Ubicar campos en MySQL con caracteres similares

Pues podrías hacer algo así:
Código sql:
Ver original
  1. UPDATE joomla SET categoria="Miami" WHERE id IN (SELECT id FROM joomla WHERE categoria LIKE 'Miami%')

Saludos.
  #5 (permalink)  
Antiguo 03/05/2009, 17:59
Avatar de Daam  
Fecha de Ingreso: octubre-2007
Ubicación: Planeta Tierra
Mensajes: 152
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Ubicar campos en MySQL con caracteres similares

Vale, gracias. Me funcionó. Espero que también le sea útil a otra persona.

Un Saludo.
__________________
"Si apuntas hacia las estrellas, puede ser que no alcances alguna, pero no terminarás con las manos llenas de lodo."
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:32.