1 2022-02-16 16:38:49 PT_TS1 >td style="ext-align:right;">21.52022-02-16 16:38:49 3 2022-02-16 16:38:49 >PT_TS321.0 4 2022-02-16 16:38:49 PT_TS4 >22.2PT_TS5 6 2022-02-16 16:38:50 PT_TS6 >23.2 7 2022-02-16 16:38:50 8 2022-02-16 16:38:50 PT_TS8 >22.29 2022-02-16 16:38:50 PT_TS_med21.825 10 2022-02-16 16:38:50 >Ccl_RH137.8514 11 2022-02-16 16:38:50 Ccl_RH2 >37.7514 12 2022-02-16 16:38:50 vAhu2_设定值 >27.013 2022-02-16 16:40:25 >PT_TS121.5 14 2022-02-16 16:40:25 >PT_TS223.2 15 2022-02-16 16:40:25 16 2022-02-16 16:40:25 >PT_TS422.2 17 2022-02-16 16:40:25 PT_TS5 >21.0 18 2022-02-16 16:40:25 >PT_TS623.2 19 2022-02-16 16:40:25 >PT_TS720.3 20 2022-02-16 16:40:25 PT_TS8 >td style="ext-align:right;">22.221 2022-02-16 16:40:25 >PT_TS_med21.825 22 2022-02-16 16:40:25 Ccl_RH1 23 2022-02-16 16:40:25 Ccl_RH2 >37.7697 24 2022-02-16 16:40:25 vAhu2_设定值 >27.0
我在数据库中的一个任务有问题我正在将数据从plc
加载到DB(mySql
),它们被读取为
id,timestamp,name,value.
我必须以的形式制作
timestamp,value1, value2, value 3 etc
值的过滤需要通过名称值来完成
我的实际选择结果
时间戳好吧,所以我设法做了这样的事情:
SELECT CONVERT('timestamp'(16), @date ,20) AS datetime
group_concat(if(lab_ccl_monitor.Name='PT_TS1',Value, NULL)) as T1,
group_concat(if(lab_ccl_monitor.Name='PT_TS2',Value, NULL)) as T2,
group_concat(if(lab_ccl_monitor.Name='PT_TS3',Value, NULL)) as T3,
group_concat(if(lab_ccl_monitor.Name='PT_TS4',Value, NULL)) as T4,
group_concat(if(lab_ccl_monitor.Name='PT_TS5',Value, NULL)) as T5,
group_concat(if(lab_ccl_monitor.Name='PT_TS6',Value, NULL)) as T6,
group_concat(if(lab_ccl_monitor.Name='PT_TS7',Value, NULL)) as T7,
group_concat(if(lab_ccl_monitor.Name='PT_TS8',Value, NULL)) as T8
from
lab_ccl_monitor
group by
Timestamp ;
它是有效的,但现在我有一个问题,我需要按最近的时间戳连接行。有时我的时间戳在一个周期内是不同的。我的意思是,一个有54秒,第二个有55秒。有办法做到吗