[SQL] Récupérer valeur de la prochaine ligne

Résolu
Alkaaran Messages postés 291 Statut Membre -  
Alkaaran Messages postés 291 Statut Membre -
Bonjour,

J'ai une table formant un historique de valeurs, associées à une date et un nom de section :

ID   SECTION   DATE        VALEUR1...
1    01       20080511   0.56
2    01       20080512   0.59
3    02       20080511   0.32
...


Ma requete actuelle :
SELECT * FROM rsectionhisto WHERE section='#section#' ORDER BY date_maj DESC


J'affiche en suite un tableau de cette forme :
Date  	     Valeur1 
11/05/2008    0.56
12/05/2008    0.59


Mais j'aimerais modifier la présentation en :
Validité 	               Valeur1 
du 11/05/2008 au 12/05/2008   0.56
du 12/05/2008 au ...         0.59


Donc il me faudrai dans ma requête récupérer la valeur de la date de la prochaine ligne...

Une idée ?
Configuration: Windows 2000
Firefox 2.0.0.14

2 réponses

  1. PhP Messages postés 1774 Statut Membre 606
     
    Bjr

    en stockant le résultat de 2 enregistrements dans des variables temporaires ex

    <?php
    function process($rowA, $rowB)
    {
    	echo "<tr>";
    	echo "<td>".$rowA[0]."</td>";
    
    	if ($rowB)
    	{
    		echo "<td>".$rowB[0]."</td>";
    	}
    	else
    	{
    		echo "<td>&nbsp;</td>";
    	}
    	echo "</tr>\n";	
    }
    
    
    
    
    $query="SELECT * FROM ....";
    $result=mysql_db_query($cfg_database,$query,$link);
    
    echo "<table border=0 cellspacing=0>";
    
    $numrows = mysql_num_rows($result);
    $rowA=mysql_fetch_array($result);
    if ($numrows == 1)
    {
    	process($rowA,null);
    }	
    while ($rowB=mysql_fetch_array($result))
    {
    	process($rowA,$rowB);
    	$rowA=$rowB;
    }
    
    echo "</table>\n";
    mysql_free_result($result);
    ?>
    --

    PhP  
    Il y a 10 types de personnes dans le monde : ceux qui comprennent le binaire et les autres ...
    0
  2. Alkaaran Messages postés 291 Statut Membre 37
     
    Merci de ta réponse PhP, le problème étant au niveau SQL, j'aurais une réponse en langage SQL, mais qu'importe j'ai trouvé la solution :

    	<CFOUTPUT query="GetData1">
    		<td>Du #right(Date_maj,2)#/#mid(Date_maj,5,2)#/#mid(Date_maj,3,2)# au #prec_date#</td>		
    		<td align="center">#secoutie#</td>
    		<td>Cout: #secmont#<br>Taux: #taumonte#</td>
    		<td>Cout: #secmain#<br>Taux: #taumaine#</td>
    		<td>Cout: #secmeca#<br>Taux: #taumecae#</td>
    	</tr>
    		<CFSET prec_date='#right(Date_maj,2)#/#mid(Date_maj,5,2)#/#mid(Date_maj,3,2)#'>
    	</CFOUTPUT>


    Eh oui on m'oblige à travailler Sous ColdFusion, mais il est evident que ta méthode marche également..
    La mienne est plus simple je pense, puisqu'on utilise simplement une variable tampon

    Merci quand même !
    0