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

Buscar registro con dos relaciones en la tabla relacional

Estas en el tema de Buscar registro con dos relaciones en la tabla relacional en el foro de Mysql en Foros del Web. Estimados necesito obtener un registro que tenga dos relaciones, les explico: Tengo las tablas: CONTENIDO id titulo descripcion CATEGORIA id titulo CONTENIDOS_X_CATEGORIAS idContenido idCategoria Siempre ...
  #1 (permalink)  
Antiguo 16/01/2018, 11:08
 
Fecha de Ingreso: noviembre-2007
Mensajes: 185
Antigüedad: 12 años
Puntos: 0
Buscar registro con dos relaciones en la tabla relacional

Estimados necesito obtener un registro que tenga dos relaciones, les explico:

Tengo las tablas:

CONTENIDO
id
titulo
descripcion

CATEGORIA
id
titulo

CONTENIDOS_X_CATEGORIAS
idContenido
idCategoria

Siempre que quiere obtener un "contenido" que esta en una categoria lo hago asi (consulta mysql desde php):
Código SQL:
Ver original
  1. SELECT
  2.                             contenidos.*
  3.                         FROM
  4.                             contenidos INNER JOIN contenido_x_categorias
  5.                             ON contenido_x_categorias.idContenido = contenidos.id
  6.                         WHERE contenido_x_categorias.idCategoria = $idCategoria
[/CODE]

Donde $idCategoria es la categoria de filtro.

La pregunta es, como puedo hacer para buscar un contenido que este en dos categorias al mismo tiempo???

Le agregue un "AND" al where y obviamente no me trajo ningun resultado.

Gracias!!

Última edición por gnzsoloyo; 16/01/2018 a las 11:39
  #2 (permalink)  
Antiguo 16/01/2018, 11:42
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.318
Antigüedad: 12 años
Puntos: 2653
Respuesta: Buscar registro con dos relaciones en la tabla relacional

Es una pregunta para un manual de SQL, sin pretender ofender:

Código SQL:
Ver original
  1. SELECT
  2.    contenidos.*
  3. FROM  contenidos CO
  4.    INNER JOIN contenido_x_categorias CC  ON CC.idContenido = CO.id
  5. WHERE CC.idCategoria = $idCategoria
  6. GROUP BY CO.id
  7. HAVING COUNT(*) = 2;

Procura buscar paginas con ejemplos de consultas, porque dudas de ese tipo suelen encontrarse fácilmente.
En este post puedes encontrar la referencia: Common MySQL Queries
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: ip, registro, relacion, relacional, relaciones, select, sql, tabla
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:29.