sql >> Databáze >  >> RDS >> Mysql

Výběr max. součtu dvou sloupců

Pokud chcete všechny řádky, když existuje více řádků se stejnou maximální hodnotou, můžete použít tento dotaz:

SELECT * FROM Table1
WHERE stu1Vers + stu2Vers = (SELECT MAX(stu1Vers + stu2Vers) FROM Table1)

Včetně vašeho stavu:

SELECT * FROM Table1
WHERE stu1Vers + stu2Vers = (
    SELECT MAX(stu1Vers + stu2Vers)
    FROM Table1
    WHERE stu1!=stu2 and assignmentid=9
) AND stu1!=stu2 and assignmentid=9

Výsledek:

392, 19, 2, 1, 6

Pokud jde o vaši aktualizaci otázky, nejsem si jistý, co máte na mysli vrátit všechny řádky seskupené podle stu1 a stu2. Možná máte na mysli řazení podle těchto sloupců? Pokud ano, přidejte ORDER BY stu1, stu2 na dotaz.



  1. 4 Předdefinované metody konverze dat SQL a případy použití

  2. mysql dotaz join/inner join

  3. Použití proměnné env v application.properties Spring Boot

  4. Použijte LIMIT k stránkování výsledků v dotazu MySQL