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

Chọn hàng có ngày gần đây nhất cho mỗi người dùng

Truy vấn:

SQLFIDDLEExample

SELECT t1.*
FROM lms_attendance t1
WHERE t1.time = (SELECT MAX(t2.time)
                 FROM lms_attendance t2
                 WHERE t2.user = t1.user)

Kết quả:

| ID | USER |       TIME |  IO |
--------------------------------
|  2 |    9 | 1370931664 | out |
|  3 |    6 | 1370932128 | out |
|  5 |   12 | 1370933037 |  in |

Giải pháp sẽ hoạt động mọi lúc:

SQLFIDDLEExample

SELECT t1.*
FROM lms_attendance t1
WHERE t1.id = (SELECT t2.id
                 FROM lms_attendance t2
                 WHERE t2.user = t1.user            
                 ORDER BY t2.id DESC
                 LIMIT 1)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chuyển kết quả cơ sở dữ liệu thành mảng

  2. CHỌN COUNT () so với mysql_num_rows ();

  3. MySQL chỉ trả về một hàng

  4. Chuyển đổi hàng thành cột trong MySQL

  5. Cách lưu trữ địa chỉ tương thích với IPv6 trong cơ sở dữ liệu quan hệ