Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Giá trị xuất hiện cao nhất trong mỗi nhóm

Tôi đã giới thiệu một bảng tạm thời chỉ để làm cho mọi thứ dễ đọc hơn một chút. Bạn chắc chắn có thể thay thế nội dòng truy vấn đó và loại bỏ bảng tạm thời nếu muốn.

Lựa chọn đầu tiên tính tổng lượt truy cập trên mỗi người dùng và trang web.

Lựa chọn thứ hai tìm số lượt truy cập tối đa cho mỗi người dùng trong truy vấn con và sau đó kết hợp trở lại bảng tạm thời để tìm webiste có số lượng phù hợp với giá trị tối đa đó.

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. Làm thế nào để thực hiện tìm kiếm LIKE với dữ liệu được mã hóa?

  2. Cách triển khai phân trang dữ liệu php-mysql bằng cách sử dụng nhà cung cấp dữ liệu

  3. Vệ sinh và xác thực biểu mẫu php

  4. Cách lưu phản hồi từ máy chủ của tôi và Làm cách nào để truy cập dữ liệu đó

  5. SQL - Truy vấn để tìm xem một chuỗi có chứa một phần giá trị trong Cột hay không