Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jul 31st, 2012  |  syntax: None  |  size: 1.42 KB  |  hits: 13  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. How can I select a Distinct value and then order by amount returned using mysql and PHP?
  2. <?php
  3. $query_db = ("SELECT DISTINCT SGSID FROM SGresult WHERE SGFACemail = '$email'");
  4. $result = mysql_query($query_db, $surveys) or die(mysql_error());
  5.  
  6.  
  7. $i = 0;
  8. while ($row = mysql_fetch_assoc($result)) {
  9.  
  10. $SGSID = $row['SGSID'];
  11. //INSERTED MODIFIED SELECT STATEMENT HERE
  12. $query_check = ("SELECT SGpID, count(*) AS numCount FROM SGresult WHERE SGFACemail = '$email' AND  SGSID = '$SGSID' GROUP BY SGpID");
  13.  
  14. $result_c = mysql_query($query_check, $surveys) or die(mysql_error());
  15. $row2 = mysql_fetch_array($result_c);
  16. $SGpID = $row2[3];
  17. echo $row2['numCount'];
  18.  
  19. //tried num_rows statement to return value of numCount
  20. //$num_rows2 = mysql_num_rows($result_c, $row2['numCount']);
  21. $num_rows = mysql_num_rows($result_c);
  22.  
  23. $query_name = ("SELECT * FROM SGsurveyID WHERE SGSID = '$SGSID'");
  24.  
  25.  
  26. $result_F = mysql_query($query_name, $surveys) or die(mysql_error($surveys));
  27. $name_row = mysql_fetch_row($result_F);
  28.  
  29. <?php echo $row2['numCount'];  //this returns results, but not the amount of rows
  30.   $i++;?>
  31.  
  32.   <tr>
  33.         <td><?php echo $i;?></td>
  34.         <td><?php echo $name_row[1];?></td>
  35.         <td><?php echo $num_rows;  ?></td>
  36.         <td> <?php echo $row2['numCount']; ?></td>
  37.       </tr>
  38.       <?php
  39.  
  40.  
  41. }
  42.        
  43. SELECT SGpID
  44.   , count(*) AS numCount
  45. FROM SGresult
  46. WHERE SGFACemail = '$email'
  47.   AND  SGSID = '$SGSID'
  48. GROUP BY SGpID
  49. ORDER BY numCount desc