通过最后一个未知ID获取一组记录

我有一个日志表,我想在其中选择特定记录组的条目,这些记录按我不知道的ID分组。 参见下表,还有更多列,但这些列与问题无关。

-------------------------------------------------------
| id | details    | deviceId | processId | timestamp  |
-------------------------------------------------------
| 1  | startup    | 753      | 538       | 1546346190 |
| 2  | processing | 753      | 538       | 1546346192 |
| 3  | logging    | 753      | 538       | 1546346217 |
| 4  | done       | 753      | 538       | 1546346220 |
| 5  | startup    | 567      | 539       | 1590648690 |
| 6  | processing | 567      | 539       | 1590648692 |
| 7  | logging    | 567      | 539       | 1590648717 |
| 8  | done       | 567      | 539       | 1590648720 |
| 9  | startup    | 753      | 540       | 1590655888 |
| 10 | processing | 753      | 540       | 1590655890 |
| 11 | logging    | 753      | 540       | 1590655915 |
| 12 | email sent | 753      | 540       | 1590655918 |
| 13 | done       | 753      | 540       | 1590655920 |
-------------------------------------------------------

我想获取一个设备的一个进程的最后一个条目 当我查询这样的信息时,我会获得设备的所有记录:

SELECT *
FROM logtable
WHERE deviceId = 753
ORDER BY timestamp DESC

当我不知道进程ID为540时,如何只在一个查询中获得带有进程ID 540的记录?

我已经用子查询尝试过了:

SELECT *
FROM logtable
WHERE processId IN (
   SELECT processId
   FROM logtable
   WHERE deviceId = 753
   ORDER BY timestamp DESC
   LIMIT 1
)

But MariaDB doesn't accept LIMIT in a subquery