0
我有兩列Page_from
和Page_to
。當記錄排序時,它們顯示爲...訪問上一行值的MySQL
Page_from Page_to
1 4
5 7
9 11
此處缺少頁碼8。 我想查找缺少的頁碼。因此,我必須能夠比較前一行中的Page_to
與當前行中的Page_from
的值。
我有兩列Page_from
和Page_to
。當記錄排序時,它們顯示爲...訪問上一行值的MySQL
Page_from Page_to
1 4
5 7
9 11
此處缺少頁碼8。 我想查找缺少的頁碼。因此,我必須能夠比較前一行中的Page_to
與當前行中的Page_from
的值。
您可以通過查找以前的記錄並比較以前的page_to
和當前的page_from
找到缺失序列的開頭。如果存在差距,則可以在差距中獲得第一頁和最後一頁。
select tprev.page_to + 1 as missing_page_from, t.page_from - 1 as missing_page_to
from (select t.*,
(select tprev.page_to
from t tprev
where tprev.page_from < t.page_from
limit 1
) as prev_to
from t
) t
where prev_to is not null and
prev_to <> t.page_from - 1;
這需要自我加入 –
將表格模式的[SQL Fiddle](http://sqlfiddle.com/)與一些數據一起發送。 – mathielo