我有一张三张桌子。主表是旅程数据,下一个表是警报表。journeydata 的主键是 journeydataID,它可以作为警报表中的键使用。接下来在警报表中有一个 fenceID,它是另一个表 fence 表的主键。下面我尝试运行一个子查询示例。我想要做的是将特定 journeydataID 的所有警报(如果它存在于单个字符串中)连接起来。但我不断收到错误 #1054 - “on 子句”中的未知列“alarmgroup.journeydataID”。接下来我要展示的任务是一个具有围栏名称值的警报。例如,如果有一个带有 fenceName 的 alarmName 的相关值显示为 alarmName(fenceName)。
SELECT journeydata.dateTime,
alarmDetails
FROM
journeydata
LEFT JOIN
( SELECT GROUP_CONCAT(alarmType.alarmName) AS alarmDetails
FROM alarm
JOIN alarmType
ON alarm.alarmTypeID = alarmType.alarmTypeID
LEFT JOIN fence
ON alarm.fenceID=fence.fenceID
WHERE alarm.associateID=6
GROUP BY alarm.journeydataID
) AS alarmgroup
ON journeydata.journeydataID=alarmgroup.journeydataID
WHERe journeydata.associateID=6