Cómo seleccionar el valor más pequeño de varias columnas con PHP -- php campo con mysql camp Relacionados El problema

How to Select Smallest Value From Multiple Columns with PHP


5
vote

problema

Español

Tengo una tabla con lo siguiente:

      6xx     8xx      9xx     11xx      12xx   1  0.01    0.002    0.004   0.001     0.025   2  0.025   0.125    0.002   0.01      0.011   

Me gustaría encontrar el menor valor de la columna Haga que esa columna sea de color verde.

Por ejemplo, en el 1º, el valor más pequeño es 0.001, por lo que quiero que sea de color verde, por segundo 0.002 es un valor más pequeño. Quiero que sea color verde.

¿Puede alguien guiarme cómo hacer esto, gracias

A continuación se muestra el código Cómo lo he seleccionado de la base de datos y mostrando int en una tabla

  <?php  $dbHost = 'localhost'; // usually localhost $dbUsername = 'xxxx'; $dbPassword = 'xxxx'; $dbDatabase = 'xxxx'; $db = mysql_connect($dbHost, $dbUsername, $dbPassword) or die ("Unable to connect to Database Server."); mysql_select_db ($dbDatabase, $db) or die ("Could not select database.");    $ColumnNames = mysql_query("SELECT column_name                                FROM information_schema.COLUMNS                               WHERE table_name = 'supplierprice'                                 AND column_name NOT IN ('supp_price_id',                                                        'region',                                                        'country',                                                        'net_id',                                                        'networkname',                                                         'mcc',                                                         'mnc',                                                         'mnp')")                 or die("mysql error");   $columnArray=array(); $i=0; while($rows=mysql_fetch_array($ColumnNames)) {  $columnArray[]=$rows[0];  echo "<th style='width:67px;' class='. $columnArray[$i] .' >" . $columnArray[$i] . "              </th>"; $i++; }  ?>  foreach($columnArray as $value) {   //$columnArray[]=$rows1[0];  echo '<td style="width:67px;font-weight:'.$text.'" id="CPH_GridView1_xxx" width="0px;" class="'.$value.' '.$rows["net_id"].'"><p>'.$rows[$value].'</p></td>';    }   
Original en ingles

I have a table with the following:

    6xx     8xx      9xx     11xx      12xx   1  0.01    0.002    0.004   0.001     0.025   2  0.025   0.125    0.002   0.01      0.011 

I would like to find the Smallest Value from the column make that column to be green color.

For example in 1st the smallest value is 0.001 so i want it to be green color, for second 0.002 is smallest value i want it to be green color.

can any one guide me how to make this ,thanks

below is the code how i selecting it from database and displaying int in a table

<?php  $dbHost = 'localhost'; // usually localhost $dbUsername = 'xxxx'; $dbPassword = 'xxxx'; $dbDatabase = 'xxxx'; $db = mysql_connect($dbHost, $dbUsername, $dbPassword) or die ("Unable to connect to Database Server."); mysql_select_db ($dbDatabase, $db) or die ("Could not select database.");    $ColumnNames = mysql_query("SELECT column_name                                FROM information_schema.COLUMNS                               WHERE table_name = 'supplierprice'                                 AND column_name NOT IN ('supp_price_id',                                                        'region',                                                        'country',                                                        'net_id',                                                        'networkname',                                                         'mcc',                                                         'mnc',                                                         'mnp')")                 or die("mysql error");   $columnArray=array(); $i=0; while($rows=mysql_fetch_array($ColumnNames)) {  $columnArray[]=$rows[0];  echo "<th style='width:67px;' class='. $columnArray[$i] .' >" . $columnArray[$i] . "              </th>"; $i++; }  ?>  foreach($columnArray as $value) {   //$columnArray[]=$rows1[0];  echo '<td style="width:67px;font-weight:'.$text.'" id="CPH_GridView1_xxx" width="0px;" class="'.$value.' '.$rows["net_id"].'"><p>'.$rows[$value].'</p></td>';    } 
     

Lista de respuestas

0
 
vote

Una respuesta para su problema puede ser esto:

1- Extrae el mínimo de cada columna por consulta SQL como esta:

  SimpleMembership0  

2- Cuando obtiene información en HTML, debe verificar si el valor es como Min, entonces el fondo (algunos CSS) se vuelven verdes:

  SimpleMembership111  
 

one answer for your problem may be this:

1- extract minimum of each column by sql query like this:

$res1=mysql_query('select min(6xx) as min6, min(8xx)as min8, min(9xx) as min9, min(11xx)as min11, min(12xx) as min12 from tbl_name');  $rec1=mysql_fetch_array($res1);  $min6=rec1['min6'];  $min8=rec1['min8'];  $min9=rec1['min9'];  .... 

2- when you fetch information in html you should check if the value is like min then background (some css) become green:

$res=mysql_query('select * from tbl_name'); echo "<table>"; foreach($rec=mysql_fetch_array($res)) { echo "<tr>"     echo "<td";         if($rec['6xx']==$min6) echo "class='green_cell' ";     echo "";         echo $rec['6xx'];     echo "</td>";     ....  echo "</tr>" 
 
 
0
 
vote

no por completo en sus requisitos. Parece que está recibiendo algunos nombres de columna para una mesa. Supongo que desea obtener los valores de estas columnas y mostrarlas en una tabla, resaltar el que tiene el valor más bajo.

Si algo así como esto. Obtiene las columnas, los bucean a través de ellos una vez para mostrar los encabezados. Para cada fila, llama a una función con los muestra. Se encuentra la clave del valor más bajo (si 2 teclas comparten el valor más bajo, se usa la clave más baja). Se las convierte en las columnas que las volvieron y los echó, sacando un color: # FF0000; en el estilo para la columna de valor más bajo.

  SimpleMembership2  
 

Not entirely sure on your requirements. You appear to be getting some column names for a table. I presume that you want to get the values of these columns and display them in a table, highlighting the one with the lowest value.

If some something like this. Gets the columns, loops through them once to display the headings. For each row it then calls a function with displays them. The key of the lowest value is found (if 2 keys share the lowest value then the lowest key is used). It loops around the columns returned and echos them out, putting out a color:#ff0000; in the style for the lowest value column.

<?php  $dbHost = 'localhost'; // usually localhost $dbUsername = 'xxxx'; $dbPassword = 'xxxx'; $dbDatabase = 'xxxx'; $db = mysql_connect($dbHost, $dbUsername, $dbPassword) or die ("Unable to connect to Database Server."); mysql_select_db ($dbDatabase, $db) or die ("Could not select database.");  $ColumnNames = mysql_query("SELECT GROUP_CONCAT(CONCAT('`', column_name, '`')) AS some_columns                               FROM information_schema.COLUMNS                               WHERE table_name = 'supplierprice'                                 AND column_name NOT IN ('supp_price_id',                                                        'region',                                                        'country',                                                        'net_id',                                                        'networkname',                                                         'mcc',                                                         'mnc',                                                         'mnp')")                 or die("mysql error");   if($rows=mysql_fetch_array($ColumnNames)) {     $sql = "SELECT ".$row['some_columns']." FROM supplierprice";     $query_values = mysql_query($sql);     if($rows2=mysql_fetch_assoc($ColumnNames))     {         echo "<tr>";         foreach($rows2 AS $key=>$value)         {             echo "<th style='width:67px;' >".$key." </th>";         }         echo "</tr>";         process_row($rows2);         while($rows2=mysql_fetch_assoc($ColumnNames))         {             process_row($rows2);         }     } }  function process_row($in_row) {     $lowest_values_key = min(array_keys($in_row, min($in_row)));       echo "<tr>";     foreach($in_row AS $key=>$value)     {         echo "<td style='width:67px;".(($lowest_values_key == $key) ? 'color:#ff0000;' : '' )."' >".$value." </th>";     }     echo "</tr>"; }  ?> 
 
 

Relacionados problema

191  Datos binarios en MySQL [CERRADO]  ( Binary data in mysql ) 
cerrado . Esta pregunta debe ser más enfocado . Actualmente no está aceptando respuestas. ...

317  ¿Qué tan grande puede obtener una base de datos MySQL antes de que se inicie el rendimiento para degradarse?  ( How big can a mysql database get before performance starts to degrade ) 
¿En qué punto comienza a perder una base de datos MySQL? significa el tamaño de la base de datos física? ¿Cuántos registros importan? ¿Alguna degradaci...

0  Las pruebas unitarias de rieles fallan debido a una restricción única en Schema_Migrations  ( Rails unit tests fail because of unique constraint on schema migrations ) 
Estoy tratando de ejecutar rake test:units y sigo recibiendo esto: Mysql::Error: Duplicate entry '2147483647' for key 1: INSERT INTO `ts_schema_migration...

177  Tirar un error en un gatillo MySQL  ( Throw an error in a mysql trigger ) 
Si tengo un M_PI3 M_PI4 en una tabla, ¿cómo puedo lanzar un error que evita la actualización en esa tabla? ...

1  MySQL: Consultas de migración de V4 a V5  ( Mysql migrating queries from v4 to v5 ) 
Al migrar un proyecto de MySQL 4 a MySQL 5, ¿cuáles son las cosas principales que necesito para abordar para garantizar que las consultas siguen siendo compat...

87  SQL Server 2005 Implementación de MySQL Reemplazar en?  ( Sql server 2005 implementation of mysql replace into ) 
MySQL tiene este comando increíblemente útil y propietario 99887776611 SQL. ¿Se puede emular fácilmente en SQL Server 2005? Inicio de una nueva transacc...

136  Mecanismos para el seguimiento de cambios de esquema DB [CERRADO]  ( Mechanisms for tracking db schema changes ) 
Según lo que actualmente representa, esta pregunta no es un buen ajuste para nuestro Q & Amp; un formato. Esperamos que las...

2  Uniéndose 2 columnas de Table1 a la Tabla 2  ( Joining 2 columns from table1 to table 2 ) 
¿Cómo se hace referencia a la tabla1 columnas a 2 columnas en la Tabla 2 He creado una tabla ' estado ' con 50 filas exactas Tratando de relacionar (Estad...

39  Python y MySQL  ( Python and mysql ) 
Puedo conseguir que Python funcione con PostgreSQL, pero no puedo hacer que funcione con MySQL. El problema principal es que, en la cuenta de alojamiento comp...

88  Cómo exportar datos de SQL Server 2005 a MySQL [CERRADO]  ( How to export data from sql server 2005 to mysql ) 
cerrado. Esta pregunta es off-topic . Actualmente no está aceptando respuestas. ¿Quieres ...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos