2012-01-15 42 views

Trả lời

7

Sử dụng này:

SELECT UNIX_TIMESTAMP() - UNIX_TIMESTAMP(datetime_col) 
+1

Đó là trả lại giây giữa cả hai dấu thời gian. Bạn vẫn cần phải chia nó cho 60 và làm tròn kết quả một cách thích hợp. –

1

Chỉ cần tìm kiếm chức năng TIMEDIFF trong tài liệu MySQL.

0

Một cách là sử dụng kỷ nguyên UNIX (theo rkosegi và Holger Chỉ cần)

SELECT ROUND((UNIX_TIMESTAMP() - UNIX_TIMESTAMP(datefield))/60); 
20

Sử dụng TIMESTAMPDIFF() tích hợp chức năng:

SELECT TIMESTAMPDIFF(MINUTE, my_datatime_col, now()) 

Bạn có thể phải trao đổi các giá trị ngày giờ để nhận được dấu hiệu đúng (dương/âm) trên kết quả nếu cột là trước/sau "bây giờ".

+0

Điều này rất hay. Cảm ơn bạn. – Jirapong

Các vấn đề liên quan