如何在phpMyAdmin中按Timestamp排序指定DEVICEID的数据
解决指定DEVICEID数据查询并按最新时间排序的问题
没问题,这事儿超简单,我给你分两种情况说清楚——直接用SQL语句,还有在phpMyAdmin里的操作步骤:
核心SQL语句
首先是最直接的查询语句,把下面的your_table_name换成你的实际表名,'Abc1'换成你要查看的DEVICEID就行:
SELECT * FROM your_table_name WHERE DEVICEID = 'Abc1' ORDER BY Timestamp DESC;
语句拆解:
SELECT *:会返回该设备的所有列数据,如果你只需要特定列(比如只看时间和两个value),可以改成SELECT Timestamp, value1, value2,查询更高效WHERE DEVICEID = 'Abc1':精准过滤出你要的设备数据,注意字符串类型的DEVICEID一定要加单引号ORDER BY Timestamp DESC:DESC表示降序排列,这样最新的时间记录会排在最顶部
注意:如果Timestamp是字符串类型
看你给出的示例里Timestamp格式是12/05/2018.12:12:23,如果这个字段是字符串类型(不是MySQL的datetime/timestamp类型),直接排序会出问题(比如按字符顺序排,不是时间先后),这时候需要先把字符串转成时间格式再排序:
SELECT * FROM your_table_name WHERE DEVICEID = 'Abc1' ORDER BY STR_TO_DATE(Timestamp, '%d/%m/%Y.%H:%i:%s') DESC;
这里的%d/%m/%Y.%H:%i:%s是和你的时间字符串格式对应的转换规则,确保和你表中的Timestamp格式一致就行。
phpMyAdmin操作步骤
- 打开phpMyAdmin,找到你的数据库,点击进入目标表
- 切换到顶部的「SQL」标签页
- 把上面的SQL语句粘贴进去,替换好表名和DEVICEID
- 点击「执行」按钮,就能看到按最新时间排序的指定设备数据了
内容的提问来源于stack exchange,提问作者Akash Agarwal
相关产品推荐
相关产品推荐

