我有一张表格,其中包含成千上万条记录,它们表示某个时刻的房间温度。到目前为止,我一直在使用JQuery绘制温度的客户端图。但是,随着记录数量的增加,我认为如果无法在单个图形中表示所有数据,则向视图提供这么多的数据是没有意义的。
我想知道是否存在单个MySQL查询,该查询返回表中每n条记录中的一条。如果是这样,我想我可以得到一段时间内测得的代表性温度样本。
有任何想法吗?提前致谢。
编辑:添加表结构。
CREATE TABLE IF NOT EXISTS `temperature` (
`nid` int(10) unsigned NOT NULL COMMENT 'Node identifier',
`temperature` float unsigned NOT NULL COMMENT 'Temperature in Celsius degrees',
`timestamp` int(10) unsigned NOT NULL COMMENT 'Unix timestamp of the temperature record',
PRIMARY KEY (`nid`,`timestamp`)
)
最佳答案
您可以执行此操作,其中子查询是您的查询,然后向其中添加行号:
SET @rows=0;
SELECT * from(
SELECT @rows:=@rows+1 AS rowNumber,nid,temperature,`timestamp`
FROM temperature
) yourQuery
WHERE MOD(rowNumber, 5)=0
国防部将每5行选择一次:这里的5是您的
n
。所以第5行,然后是10、15等关于mysql - 每n个记录中检索一个,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33486313/