Mình có đoạn truy vấn sau:
SELECT from_unixtime(F.timestamp), F.fuelLevel
FROM `gtse`.`tblFuel` F
JOIN
(SELECT from_unixtime(timestamp) date_and_hour, MAX(fuelLevel) max_fuel
FROM gtse.tblFuel
GROUP BY date_and_hour) AS max_fuel
ON from_unixtime(F.timestamp) = max_fuel.date_and_hour
AND F.fuelLevel = max_fuel
where accountID = 'vinhnghia' and deviceID = '14C-00263'
and from_unixtime(timestamp) between '2014-10-20 00:00:02' and '2014-10-22 10:52:02'
mục đích của mình là lấy ra thời gian và mức nhiên liệu trong database. Nhưng do một số lý do ngoại cảnh mà dữ liệu không chuẩn, do đó mình muốn cứ sau khoảng 1 giờ thì sẽ lấy số liệu một lần ứng với giá trị lớn nhất trong khoảng đó. Code trên của mình làm việc đó, nhưng chắc do một số sai sót nào đó(mình đã kiểm tra và thực tình k xác định được lỗi ở đâu) mà query không chạy được. Mình muốn hỏi là có cách nào khác để lấy được giá trị theo yêu cầu không, và query của mình có sai sót gì không?
. Trước mình thử như này:
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?