我怀疑name是关键,它不能为空。此外,您希望获取 name=001 的“最新”值。
SELECT a.id, b.name, c.motorSpeed, d.motorDelay, e.F1type, f.F2type, g.F3type
FROM
(SELECT * FROM table WHERE id IS NOT NULL ORDER BY id DESC LIMIT 1) a
LEFT JOIN
(SELECT * FROM table WHERE name IS NOT NULL ORDER BY id DESC LIMIT 1) b ON b.name=a.name
LEFT JOIN
(SELECT * FROM table WHERE motorSpeed IS NOT NULL ORDER BY id DESC LIMIT 1) c ON c.name=a.name
LEFT JOIN
(SELECT * FROM table WHERE motorDelay IS NOT NULL ORDER BY id DESC LIMIT 1) d ON d.name=a.name
LEFT JOIN
(SELECT * FROM table WHERE F1type IS NOT NULL ORDER BY id DESC LIMIT 1) e ON e.name=a.name
LEFT JOIN
(SELECT * FROM table WHERE F2type IS NOT NULL ORDER BY id DESC LIMIT 1) f ON f.name=a.name
LEFT JOIN
(SELECT * FROM table WHERE F3type IS NOT NULL ORDER BY id DESC LIMIT 1) g ON g.name=a.name
WHERE a.name='001';