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

Agrupar

Estas en el tema de Agrupar en el foro de Bases de Datos General en Foros del Web. Buenas tengo un problema sobre agrupar que no consigo resolver. Tengo una tabla donde se guardan una serie de noticias de medios de comunicacion Los ...
  #1 (permalink)  
Antiguo 07/10/2009, 05:43
 
Fecha de Ingreso: abril-2008
Mensajes: 70
Antigüedad: 16 años
Puntos: 0
Agrupar

Buenas tengo un problema sobre agrupar que no consigo resolver.

Tengo una tabla donde se guardan una serie de noticias de medios de comunicacion

Los campos de la tabla son cod_rss(id), title(titular),summary(contenido),author(autor), date(fecha),link(enlace) y categoria.

Las categorias en que están clasificadas las noticias son 4. Agenda, entrevista, opinion y noticia.

Bien la consulta que tengo me extrae lo siguiente:

Agenda (07 de octubre) --> Categoria (Fecha de hoy)
El faro de Vigo --> Autor
patatin patatan --> Titular
sadasdasjdasjdjasdjasjdjsadjsjadas --> Contenido

El problema es que no consigo agrupar todas las noticias del mismo medio si no que si hay 10 noticias de el faro de vigo me muestra 10 veces El faro de Vigo y yo lo que quiero es que me ponga el faro de vigo y un listado con las 10 noticias a continuación.

Probé con Group by y ya desubrí que no se puede que solo te muestra un registro luego hice una anidada y me peta

Este es el código que tengo
Código PHP:
<?php require_once('Connections/axenda.php'); ?>
<?php

mysql_select_db
($database_axenda$axenda);
$query_dossier "SELECT cod_rss,title,link,author,categoria,summary,DATE_FORMAT(CURDATE(),'%d/%m/%Y') AS date FROM noticias Where categoria ='axenda' ORDER BY noticias.author";
$dossier mysql_query($query_dossier$axenda) or die(mysql_error());
$row_dossier mysql_fetch_assoc($dossier);
$totalRows_dossier mysql_num_rows($dossier);

mysql_select_db($database_axenda$axenda);
$query_noticias "SELECT cod_rss,title,link,author,categoria,summary,DATE_FORMAT(CURDATE(),'%d/%m/%Y') AS date FROM noticias WHERE categoria ='noticias' ORDER BY noticias.author";
$noticias mysql_query($query_noticias$axenda) or die(mysql_error());
$row_noticias mysql_fetch_assoc($noticias);
$totalRows_noticias mysql_num_rows($noticias);

mysql_select_db($database_axenda$axenda);
$query_entrevistas "SELECT cod_rss,title,link,author,categoria,summary,DATE_FORMAT(CURDATE(),'%d/%m/%Y') AS date FROM noticias WHERE categoria ='entrevistas'";
$entrevistas mysql_query($query_entrevistas$axenda) or die(mysql_error());
$row_entrevistas mysql_fetch_assoc($entrevistas);
$totalRows_entrevistas mysql_num_rows($entrevistas);

mysql_select_db($database_axenda$axenda);
$query_opinion "SELECT cod_rss,title,link,author,categoria,summary,DATE_FORMAT(CURDATE(),'%d/%m/%Y') AS date FROM noticias WHERE categoria ='opinion' ORDER BY noticias.author";
$opinion mysql_query($query_opinion$axenda) or die(mysql_error());
$row_opinion mysql_fetch_assoc($opinion);
$totalRows_opinion mysql_num_rows($opinion);

// Substituimos autor por El correo gallego en el campo 
// 'campo' de la tabla 'tabla' 
$sql "UPDATE noticias SET author='El correo gallego' WHERE link LIKE '%http://www.galicia-hoxe%'";

// Ejecutamos la consulta 
$query mysql_query($sql,$axenda); 

// Substituimos autor por El correo gallego en el campo 
// 'campo' de la tabla 'tabla' 
$sql2 "UPDATE noticias SET author='La Region' WHERE link LIKE '%http://www.laregion%'";

// Ejecutamos la consulta 
$query mysql_query($sql2,$axenda); 


?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
<style type="text/css">
<!--
.Estilo4 {
    font-size: 14px;
    font-family: Verdana, Arial, Helvetica, sans-serif;
}
.Estilo6 {
    font-family: Geneva, Arial, Helvetica, sans-serif;
    font-weight: bold;
    font-size: 23px;
}
.Estilo7 {font-size: 20px}
body {
    background-color: #CCCCCC;
}
-->
</style>
</head>

<body>
<p>&nbsp;</p>
<p>&nbsp;</p>
<table width="62%" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><div align="center">
       <ul> 
         <p><span class="Estilo6">AXENDA [<?php echo $row_dossier['date']; ?>]</span>         </p>
         <?php do { ?>
           <br />
           <span class="Estilo7"><?php echo $row_dossier['author']; ?></span><br />
           <br />
        <li class="Estilo4"> <a href="<?php echo $row_dossier['link']; ?>"><?php echo $row_dossier['title']; ?></a> </li>
          <?php } while ($row_dossier mysql_fetch_assoc($dossier)); ?></ul>
       </p>
    </div></td>
  </tr>
</table>
<br />
<table width="62%" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><div align="center">
      <ul>
        <p><span class="Estilo6">ENTREVISTAS [<?php echo $row_entrevistas['date']; ?>]</span> </p>
        <?php do { ?>
        <br />
        <span class="Estilo7"><?php echo $row_entrevistas['author']; ?></span><br />
        <br />
        <li class="Estilo4"> <a href="<?php echo $row_entrevistas['link']; ?>"> <?php echo $row_entrevistas['title']; ?></a></li>
        <?php } while ($row_entrevistas mysql_fetch_assoc($entrevistas)); ?>
      </ul>
      </p>
    </div></td>
  </tr>
</table>
<br />
<table width="62%" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><div align="center">
      <ul>
        <p><span class="Estilo6">NOTICIAS [<?php echo $row_noticias['date']; ?>]</span> </p>
        <?php do { ?>
        <br />
        <span class="Estilo7"><?php echo $row_noticias['author']; ?></span><br />
        <br />
        <li class="Estilo4"> <a href="<?php echo $row_noticias['link']; ?>"><?php echo $row_noticias['title']; ?></a></li>
        <?php } while ($row_noticias mysql_fetch_assoc($noticias)); ?>
      </ul>
      </p>
    </div></td>
  </tr>
</table>
<br />
<table width="62%" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><div align="center">
      <ul>
        <p><span class="Estilo6">OPINI&Oacute;N [<?php echo $row_opinion['date']; ?>]</span> </p>
        <?php do { ?>
        <br />
        <span class="Estilo7"><?php echo $row_opinion['author']; ?></span><br />
        <br />
        <li class="Estilo4"><a href="<?php echo $row_opinion['link']; ?>"> <?php echo $row_opinion['title']; ?></a></li>
        <?php } while ($row_opinion mysql_fetch_assoc($opinion)); ?>
      </ul>
      </p>
    </div></td>
  </tr>
</table>
</body>
</html>
<?php
mysql_free_result
($dossier);

mysql_free_result($noticias);

mysql_free_result($entrevistas);

mysql_free_result($opinion);
?>
  #2 (permalink)  
Antiguo 07/10/2009, 08:09
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Agrupar

Hamwe

replantea la pregunta con respecto a bases de datos.
No pongas codigo php en tu post, ya que en este foro no está permitido.
Si la pregunta es directamente con bases de datos, pon la pregunta concreta y luego vos la organizás con tu codigo php.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
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 11:47.