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

Chọn giá trị lớn nhất cho mỗi 7 ngày qua

SELECT   DATE(FROM_UNIXTIME(time)) AS daygroup, 
         MAX(value) AS max_value, 
         MIN(value) AS min_value
FROM     tbl
WHERE    time >= UNIX_TIMESTAMP(CURDATE() - INTERVAL 7 DAY)
GROUP BY daygroup

Điều này sẽ nhận được giá trị tối thiểu và tối đa của value cho mỗi ngày trong 7 ngày qua.

Chỉnh sửa: Giải pháp cập nhật để lấy dữ liệu của toàn bộ hàng:

SELECT a.*
FROM tbl a
INNER JOIN
(
    SELECT   DATE(FROM_UNIXTIME(time)) AS daygroup, 
             MAX(value) AS max_value 
    FROM     tbl
    WHERE    time >= UNIX_TIMESTAMP(CURDATE() - INTERVAL 7 DAY)
    GROUP BY daygroup
) b ON DATE(FROM_UNIXTIME(a.time)) = b.daygroup AND a.value = b.max_value



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hiển thị dữ liệu với định dạng trong Datagridview

  2. Bảng MySQL với cột TEXT

  3. MySQL DELETE FROM với truy vấn con UNION theo điều kiện IN

  4. Toán tử logic AND trong mySql REGEXP?

  5. php:cách thay đổi dữ liệu chuỗi thành dữ liệu số