Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/10/2008, 04:44
Avatar de DooBie
DooBie
 
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Duda clausula WHERE, no se plantearla

Hola compañeros, os pongo en situación...
Tengo una tabla con varios campos, aunque lo que me está rompiendo la cabeza, es uno en concreto, un campo tipo varchar, que tiene un formato "estandar", es decir, en ese campo, se guardaran datos con este formato:
12,345,10,300,5634, es decir, una serie de números separados por comas (,)
La cuestión es la siguiente, suponiendo que en la tabla ya tengo estos datos (ficticios, pero posibles):

id | valor
1 | 45,89,12
2 | 34,9,89
3 | 0
4 | 2,65,467
5 | 34,89,24
6 | 2,8,3445
7 | 890,3

Lo que quiero hacer, es recuperar los registros que tengan en el campo valor el numero 89 y los que solo tengan un 0 (somo si fuera un valor NULL). Con estos registros, la consulta debería devolver cuatro registros, los correspondientes al id=1, id=2, id=3 e id=5, pero no debe devolver el 7, ya que es 890 y no 89

Yo he probado con SELECT * FROM tabla WHERE valor LIKE '89' evidentemente, no funciona, ya que el campo valor, tiene mas cadenas que 89, luego probe con LIKE '%89%' pero me devuelve el id 7 (890)

En definitiva, no se como crear la consulta, alguna ayuda por favor.
Saludos y gracias, aunque solo sea por leer