我在调整查询时遇到问题。这是我当前的查询:
SELECT tt.unit_id, tt.latitude, tt.longitude
FROM AA55 tt
INNER JOIN
(SELECT unit_id, MAX(entry_id) AS MaxEntryID
FROM AA55
GROUP BY unit_id) groupedtt
ON tt.unit_id = groupedtt.unit_id
AND tt.entry_id = groupedtt.MaxEntryID;
这会显示每个唯一设备的最新版本及其纬度/经度。我正在尝试向其添加仅显示从名为 device_link 的表中选择 user_id 的设备的功能。因此,如果有人登录他们的帐户,我只希望查询提取链接到他们帐户的设备。有什么想法吗?
最佳答案
有助于查看表之间关系的 ER 图之类的东西。基本上是这样的:
SELECT
tt.unit_id,
tt.latitude,
tt.longitude
FROM AA55 tt
LEFT JOIN device_link AS dl ON dl.id = unit_id
INNER JOIN (SELECT unit_id, MAX(entry_id) AS MaxEntryID FROM AA55 GROUP BY unit_id) AS groupedtt
ON tt.unit_id = groupedtt.unit_id
AND tt.entry_id = groupedtt.MaxEntryID
WHERE dl.user_id = ?;
正如我在评论中所说,您需要加入单元/设备/事物 ID,然后对用户 ID 施加约束。
关于mysql - 当他们使用 php 登录时,尝试对每个帐户进行唯一查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45824103/