我正在为学校创建一个IT服务管理系统。我需要从SQL数据库中检索一个查询,其中显示了设备的基本详细信息以及分配给该设备的所有者的ID。 “设备”表格列出所有计算机,“分配”表格指定将哪个用户分配给每个设备(基于assetID)。SQL子查询 - 引用子查询的“WHERE”子句中的外部值
问题是我不确定如何从主查询中引用当前行的'assetID'值。
SELECT
devices.assetID,
devices.make,
devices.model,
TotalServices=Count(services.id),
AssignedOwner=(SELECT assignments.studentID FROM devices INNER JOIN assignments ON devices.assetID=assignments.assetID WHERE assignments.assetID=<VALUE OF ASSET ID FOR CURRENT ROW>)
FROM devices
LEFT JOIN services
ON services.assetID = devices.assetID
GROUP BY
devices.assetID,
devices.make,
devices.model
我不知道我怎么会为了获取指定用户的ID引用由assetid值当前行...
assignments.assetID=<VALUE OF ASSET ID FOR CURRENT ROW>
预先感谢任何指导!
你不应该使用JOIN吗? –