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

COmo puedo usar la sentencia IN con un campo de la tabla?

Estas en el tema de COmo puedo usar la sentencia IN con un campo de la tabla? en el foro de Mysql en Foros del Web. Estuve buscando en internet y no encuentro como hacerlo... La idea es hacer un select que me filtre todos los registros de notas dentro de ...
  #1 (permalink)  
Antiguo 04/12/2007, 12:33
 
Fecha de Ingreso: mayo-2005
Mensajes: 278
Antigüedad: 18 años, 11 meses
Puntos: 3
COmo puedo usar la sentencia IN con un campo de la tabla?

Estuve buscando en internet y no encuentro como hacerlo...

La idea es hacer un select que me filtre todos los registros de notas dentro de la categoria 6, como una nota puede estar en varias categorias, el campo categorias de la tabla es del tipo string y contiene valores como "6,5,25", es decir, distintas categorias separadas con coma.

La consulta seria algo asi:

Select * from notas where 6 in (categorias) from notas.


Obviamente que no funciona, alguna ayuda?
  #2 (permalink)  
Antiguo 04/12/2007, 14:12
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 5 meses
Puntos: 655
Re: COmo puedo usar la sentencia IN con un campo de la tabla?

Código PHP:
SELECT FROM notas
WHERE categoria IN 
(5625
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
  #3 (permalink)  
Antiguo 04/12/2007, 22:14
 
Fecha de Ingreso: febrero-2007
Ubicación: Panamá
Mensajes: 10
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: COmo puedo usar la sentencia IN con un campo de la tabla?

Tambíen puedes hacer consultas subconsultas, por ejemplo
Código PHP:
SELECT FROM notas WHERE categoria IN 
(SELECT id FROM categorias WHERE x valorx

Última edición por BrujoNic; 05/12/2007 a las 19:27
  #4 (permalink)  
Antiguo 05/12/2007, 09:17
 
Fecha de Ingreso: mayo-2005
Mensajes: 278
Antigüedad: 18 años, 11 meses
Puntos: 3
Re: COmo puedo usar la sentencia IN con un campo de la tabla?

Ya tengo la solucion, no se si sera muy tecnica pero si tiene mucha imaginacion:

Select * from notas where concat(',',a.idcategorias,',') like '%,6,%')

De esta forma me devuelve los campos con valores como : "10,6,5" - "15,2,6", etc.
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 16:21.