SQL - Saber o máximo de uma tabela.

  • Autor Autor Daniel Muñoz
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
Daniel Muñoz

Daniel Muñoz

1
Pi
Programador
Verificado
Verificación en dos pasos activada
Verificado por Binance
Suscripción a IA
Hola betas.

Quiero utilizar esta función para determinar el máximo de una fila de una tabla de la base de datos.

Inserir CODE, HTML ou PHP:
SELECT MAX(column_name) FROM table_name;

Mi pregunta seria, como hago para que me imprima el numero devuelto?
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
creo que sería así

PHP:
<?php
$conexion = mysqli_connect("localhost","user","password","db");
$hola = mysqli_query($conexion,"SELECT MAX(column_name) FROM table_name;");

echo $hola['column_name'];
?>

Creo que es así, nunca he usado esa función de "max" xD
 
Puedes usar MAX o puedes usar un ORDER BY con un SELECT TOP 1.
 
creo que sería así

PHP:
<?php
$conexion = mysqli_connect("localhost","user","password","db");
$hola = mysqli_query($conexion,"SELECT MAX(column_name) FROM table_name;");

echo $hola['column_name'];
?>

Creo que es así, nunca he usado esa función de "max" xD

Concuerdo contigo Kappa asi debera funcionar
 
Concuerdo contigo Kappa asi debera funcionar

Pues yo no estoy muy seguro, ya que si eso lo ejecutas en un gestor de DB verás que el nombre de la columna no es "column_name", sino "MAX(column_name)", lo mejor seria ponerle un nombre y acceder al campo por ese nombre, algo como:

PHP:
<?php
$conexion = mysqli_connect("localhost","user","password","db");
$hola = mysqli_query($conexion,"SELECT MAX(column_name) AS total FROM table_name;");

echo $hola['total'];
?>
 
Me uno a la pregunta del amigo , por ejemplo tengo una base de datos con la asistencia de alumnos y quiero mostrar siempre el de mayor asistencia , como ese numero es incrementable solo necesito poner en la consulta el "max" para que siempre muestre el valor mas alto ? O debo poner siempre cual es el valor "max" ?
 
No especificaste muy bien donde lo quieres imprimir pero si es en la página es con AS como te dijo lombervid
 
Sin hacer un fetch creo que no funcionará el código que están dando.
 

Lo ejecuto desde PHP para que me muestre el máximo. Y tengo una tabla "personas" donde quiero saber el valor mas alto del autoincrementable "id_p" =) con el ejemplo que me has dado funcionara?
 
Lo ejecuto desde PHP para que me muestre el máximo. Y tengo una tabla "personas" donde quiero saber el valor mas alto del autoincrementable "id_p" =) con el ejemplo que me has dado funcionara?

Debería, solo que como ya dijeron faltaria un fetch, algo como:
PHP:
 <?php
$conexion = mysqli_connect("localhost","user","password","db");
$res= mysqli_query($conexion,"SELECT MAX(column_name) AS total FROM table_name;");
$total = $res->fetch_assoc();
echo $hola['total'];
?>
 

Asi me quedo el codigo.

PHP:
$sql = "SELECT MAX(column_name) AS total FROM table_name";
  $res= mysqli_query($bd,$sql);
  $total = $res->fetch_assoc();
  echo $hola['total'];

Y los errores.

Inserir CODE, HTML ou PHP:
[B]Warning[/B]:  mysqli_query() expects parameter 1 to be mysqli, string given in [B]/opt/lampp/htdocs/127.0.0.2/beta3.php[/B] on line [B]5[/B]

[B]Fatal error[/B]:  Call to a member function fetch_assoc() on a non-object in [B]/opt/lampp/htdocs/127.0.0.2/beta3.php[/B] on line [B]6[/B]
 
Asi me quedo el codigo.

PHP:
$sql = "SELECT MAX(column_name) AS total FROM table_name";
  $res= mysqli_query($bd,$sql);
  $total = $res->fetch_assoc();
  echo $hola['total'];

Y los errores.

Inserir CODE, HTML ou PHP:
[B]Warning[/B]:  mysqli_query() expects parameter 1 to be mysqli, string given in [B]/opt/lampp/htdocs/127.0.0.2/beta3.php[/B] on line [B]5[/B]

[B]Fatal error[/B]:  Call to a member function fetch_assoc() on a non-object in [B]/opt/lampp/htdocs/127.0.0.2/beta3.php[/B] on line [B]6[/B]

$bd que es? deberia de ser la conexion, y eso es lo que te dice que debe de ser la conexion y tu le pasaste un string.
 

Si es que había borrado la función de conexión del archivo y no me di cuenta. Ya pude dar con el resultado esperado y el código me quedo así gracias a ustedes.

PHP:
$sql = "SELECT MAX(id) AS maxid FROM ruta";
  $resultado = mysqli_query($bd, $sql);
  $columna = mysqli_fetch_assoc($resultado);
  $hola = $columna['maxid'];
 
Voltar
Topo