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

Estructurar una consulta con JOIN

Estas en el tema de Estructurar una consulta con JOIN en el foro de Bases de Datos General en Foros del Web. Hola, tengo problema con una consulta esta es mi estructura de la DB Estoy tratando de hacer que en una pagina me muestre las secciones ...
  #1 (permalink)  
Antiguo 07/07/2005, 02:28
Avatar de _ssx  
Fecha de Ingreso: mayo-2003
Ubicación: mX
Mensajes: 683
Antigüedad: 21 años
Puntos: 60
Estructurar una consulta con JOIN

Hola, tengo problema con una consulta esta es mi estructura de la DB



Estoy tratando de hacer que en una pagina me muestre las secciones que tengo y que abajo de cada seccion me muestre las noticias que tiene esa seccion.. Algo asi

Seccion 1
--registro 1
--registro 2
--registro 3
Seccion 2
--registro 4
--registro 5
--registro 6

esta es mi consulta... pero me muestra las secciones con el numero de noticias que hay.. osea me repite las secciones mostrando las mismas secciones pero con el numero de registros que tiene la tabla noticias.. ¿Como debo de hacer mi consulta?

Código:
$result = mysql_query ("SELECT secciones.nombre AS seccion, secciones.descripcion
FROM secciones 
JOIN noticias ON noticias.id_seccion = secciones.id_seccion",$link) or die (mysql_error());
__________________
Escribe tu código de forma que refleje, y saque a relucir,lo mejor de tu carácter personal
www.oscararzola.com/blog
Principios de un programador
  #2 (permalink)  
Antiguo 07/07/2005, 02:49
 
Fecha de Ingreso: abril-2005
Mensajes: 151
Antigüedad: 19 años
Puntos: 1
Pon un distinct delante de secciones, algo asi:
SELECT DISTINCT secciones.nombre....etc, etc, etc
A ver si asi te funciona bien, y usa tambien un LEFT JOIN, para que te muestre todas las secciones tengan o no algun registro.
Espero q te vaya.
Saludos!!!
  #3 (permalink)  
Antiguo 07/07/2005, 03:58
Avatar de Vice  
Fecha de Ingreso: agosto-2003
Mensajes: 613
Antigüedad: 20 años, 9 meses
Puntos: 2
Si sólo quieres ver las secciones ¿para que cruzas con la tabla noticias?. Para obtener sólo las secciones, pues tan simple como:
Código:
select id_seccion, nombre
from secciones
De todas formas, para sacar lo que pones en tu consulta, la sentencia select sería:
Código:
select secciones.id_seccion, secciones.nombre, noticias.titulo
from secciones left join noticias on secciones.id_sección=titulo.id_seccion
Esta consulta te saca todas las secciones, tengan o no noticias, con sus noticias asociadas. Para la presentarlo como tu quieres, ya tienes que trabajar en la programación.
Un saludo.
__________________
Estoy contagiado de Generación-I
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:39.