在数据库中,我已经在一秒间隔内存储了数据,但我希望以用户输入的某个特定间隔将存储的数据检索到文件中。
数据如下:
TIMESTAMP VALUES
1436846660 10
1436846661 10
1436846662 10
1436846663 10
1436846664 10
对于用户输入的时间间隔2
,预期结果为:
TIMESTAMP VALUES
1436846660 10
1436846662 10
1436846664 10
我使用以下命令将数据从starttime
提取到stoptime
SELECT
`VALUES`
INTO
OUTFILE 'FILEPATH'
FIELDS TERMINATED BY ''
LINES TERMINATED BY '\n'
FROM
TABLENAME
WHERE
TABLENAME.TIMESTAMP >=starttime
AND TABLENAME.TIMESTAMP <=stoptime;
那么,我应该如何修改此代码以仅包含具有特定时间间隔的starttime
和stoptime
之间的数据。请给我一个解决方案。
答案 0 :(得分:0)
查询在半小时后选择
select
*
,ROUND( TIMESTAMPDIFF( MINUTE ,'2013-07-12' ,Insert_time ) / 48 ) AS 'interval'
FROM
TABLENAME
答案 1 :(得分:0)
这段代码对我有用。间隔:2
SELECT
`value`
-- ,`timestamp`
INTO outfile 'test.csv'
FIELDS TERMINATED BY ''
LINES TERMINATED BY '\n'
FROM
`timestamp_table`
WHERE
`timestamp` >= 1436846660
AND `timestamp` <= 1436846670
AND MOD( `timestamp` ,2) = 0
在最后一行中,将2更改为您需要的任何时间间隔。