[英]how to get next/previous records in mysql based on timestamp
我想知道如何參考我當前選擇的行從mysql數據庫中選擇下一行和上一行。
我在SO上發現了這個問題。 如何在MySQL中獲取下一個/上一個記錄? 但是在這種情況下,選擇是根據參考中的較高和較低ID進行的。 我想使用更早或更晚的時間戳而不是id。
沒有理由使用子查詢。
下一個:
SELECT * FROM `my_table`
WHERE `the_timestamp` > 123456
ORDER BY `the_timestamp` ASC
LIMIT 1
上一條:
SELECT * FROM `my_table`
WHERE `the_timestamp` < 123456
ORDER BY `the_timestamp` DESC
LIMIT 1
根據您鏈接到的文章,您可以使用:
SELECT *
FROM `my_table`
WHERE `the_timestamp` = (
SELECT MIN(`the_timestamp`)
FROM `my_table`
WHERE `the_timestamp` > 1373493634
);
對其進行格式化以提高可讀性。 將我使用的時間戳(1373493634)替換為要在其后查找下一個記錄的時間戳。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.