2013-01-08 16 views
6

Jak wybrać min i maks. Z tabeli według wyniku kolumny? Czy jest to możliwe w przypadku zapytania sesji?Jak wybrać min i maks. Z tabeli według wyniku kolumny?

class Player(Base): 
    username = Column(String) 
    score = Column(Integer) 
    # more not impoortant columns 
+1

mógłbyś wyjaśnić zrobić trzeba tylko minimalnych i maksymalnych wartości punktacji lub gramofon, który ma min wynik i rekord gracz, który ma maksymalny wynik? – vvladymyrov

Odpowiedz

19

Dla przypadku, gdy trzeba znaleźć wartości minimalne i maksymalne dla pola punktacji. Można to zrobić za pomocą jednego zapytania przy użyciu min i funkcje MAX:

from sqlalchemy.sql import func 
qry = session.query(func.max(Player.score).label("max_score"), 
       func.min(Player.score).label("min_score"), 
       ) 
res = qry.one() 
max = res.max_score 
min = res.min_score 
2
from sqlalchemy import func 
max = session.query(func.max(Table.column)).scalar() 
min = session.query(func.min(Table.column)).scalar() 
Powiązane problemy