2011-01-03 13 views

Respuesta

12

Se puede utilizar

SELECT * FROM `YourTable` ORDER BY YourColumn LIMIT 1 
+0

¿Qué sucede si el OP quiere todas las filas que coinciden con el valor mínimo? –

+5

@OMG Ponies: OP especificó una fila. – jweyrich

2
select 
f.* 
from 
foo f 
inner join 
(
select min(id) as id from foo 
) m on m.id = f.id; 
5

prueba este

SELECT * FROM `table` ORDER BY `column` ASC LIMIT 1; 
1

Para seleccionar todas las filas que coinciden con el valor mínimo de una columna (en SQL Server)

SELECT T.col1, T.col2 
From Table T 
Where T.col1 = (select MIN(col1) from Table) 

Para seleccionar solo una fila, puede modificar la primera línea sea:

Select Top 1 T.col1, T.col2 

y siempre se puede añadir 'Ordenar por COLX' hasta el final (varias columnas, separados por comas demasiado trabajo).

Espero que ayude.

0

Estaba buscando una solución similar. Quería la fila completa con un valor mínimo de un grupo de tabla por otra columna. Aquí está la solución que encontré. Clasifiqué la tabla por la columna de minio con una cláusula order_by y pasé la subconsulta a una consulta con ORDER BY que capta la primera fila que aparece, que es la fila ordenada.

id bigint(20)  
commission decimal(5,4) 
door_price decimal(19,2) 
event_id bigint(20) 
min_commission decimal(19,2) 
price decimal(19,2) 
visible_to_public 

SELECT * FROM (SELECT  
     price_bundle.id as id, 
     event_id, 
     price_bundle.price + (case when ((price_bundle.commission * price_bundle.price) > price_bundle.min_commission) then (price_bundle.commission * price_bundle.price) else price_bundle.min_commission end) AS total 
    FROM price_bundle 
WHERE price_bundle.visible_to_public = 1 
ORDER BY total asc 
) AS price_bundle_order_by_total_price_asc GROUP BY event_id 
Cuestiones relacionadas