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

Най-високо представяне на стойност във всяка група

Въведох временна таблица, само за да направя нещата малко по-лесни за четене. Със сигурност бихте могли да замените тази заявка вградена и да премахнете временната таблица, ако желаете.

Първият избор сумира посещенията на потребител и уебсайт.

Вторият избор намира максималните посещения за всеки потребител в подзаявката и след това се присъединява обратно към временната таблица, за да намери уеб сайта, чийто брой съответства на тази максимална стойност.

create temporary table TempSum
    select user-ID, website-ID, count(*) as TotalCount
        from YourTable
        group by user-ID, website-ID

select ts.user-ID, ts.website-ID, ts.TotalCount
    from (select user-ID, max(TotalCount) as MaxCount
              from TempSum
              group by user-ID) ms
        inner join TempSum ts
            on ts.user-ID = ms.user-ID
                and ts.TotalCount = ms.MaxCount


  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:Вмъкване в множество таблици в една и съща заявка с BEGIN&COMMIT

  2. mysql + php извличат деца на листа с път

  3. Как мога да покажа пълния текст на заявка, създадена от PDO?

  4. Обработка на непрочетени публикации в PHP / MySQL

  5. Как да инсталирам pdo драйвер в php docker изображение?