从表中选择最后x行并使用最后一个选择索引号(+1)来开始下一个相同查询

时间:2012-08-01 10:16:47

标签: mysql

我需要每隔5分钟(cron)捕获添加到块中的mysql表的最后数据到文件

我需要使用最后一个索引号作为下一个查询的开头(+1)..依此类推。

基本上我需要捕获单个文本文件的唯一记录块而不重叠记录。

Index_No Forename Surname

1012 bob Smith

1013 Ann Smith

1014 Mike Hope

首次运行查询将获得一定数量的事件,最多可达1014个。

下一个查询将在5分钟后自动运行(cron?)并从1015向上开始。

等等......每5分钟一次。

我已经在www上找到答案,但尚未找到答案。我正在寻找前一个查询(+1)的最后一条记录,直到最后一次每5分钟进行一次循环。

2 个答案:

答案 0 :(得分:1)

我认为如果我实现这个要求,我会写一个运行查询的程序并将输出吐出到文件中。该程序还将使用某种持久数据存储(文本文件/ db / whatever)来跟踪最后一条记录。

然后您可以使用cron来调用您的程序。

HTH

答案 1 :(得分:0)

拥有一个带有index_No的日志表,并在您查询时使用最后一个No更新它。像这样的东西

Create table index_log(Index_no int)

Insert into index_log(Index_no)
select 1014

select columns from source_table
where index_no>(select index_no from index_log)

Update index_log
set index_no=(select max(index_no) from source_table