Mysql
 sql >> база данни >  >> RDS >> Mysql

Избиране на максимум от сбор от две колони

Ако искате всички редове, когато има няколко реда с една и съща максимална стойност, тогава можете да използвате тази заявка:

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

Включително вашето състояние:

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

Резултат:

392, 19, 2, 1, 6

По отношение на вашата актуализация на въпроса, не съм сигурен какво имате предвид да върнете всички редове, групирани от stu1 и stu2. Може би имате предвид подредени от тези колони? Ако е така, добавете ORDER BY stu1, stu2 към заявката.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Множество И условия MySQL

  2. Как да сравним две полета/колони в условие?

  3. Използване на LAST_INSERT_ID() в многоредово вмъкване

  4. Показване на множество стойности от един ред, когато се използва падащото поле от базата данни на mysql

  5. Spring Mvc Hibernate Encoding/Multi-line import sql