我正在尝试创建一个 ConfigMgr 报告,该报告将为我们环境中的每台笔记本电脑显示 3 个注册表项值。我的查询如下所示:
Select distinct
SYS.Netbios_Name0,
(Select REG.Value0 where REG.KeyPath0='HKEY_LOCAL_MACHINE\SOFTWARE\BatteryDesignCapacity' ) as BatteryDesignCapacity,
(Select REG.Value0 where REG.KeyPath0='HKEY_LOCAL_MACHINE\SOFTWARE\BatteryFullChargedCapacity' ) as BatteryFullChargedCapacity,
(Select REG.Value0 where REG.KeyPath0='HKEY_LOCAL_MACHINE\SOFTWARE\BatteryHealth' ) as BatteryHealth
from v_GS_Registry_Values0 REG
INNER JOIN v_R_System_Valid SYS
ON SYS.ResourceID = REG.ResourceID
ORDER BY SYS.Netbios_Name0
但是,当我运行报告时,我会为每个笔记本电脑名称获得 4 行。一行包含笔记本电脑名称和所有空白注册表值,下一行仅包含 BatteryDesignCapacity 值,第三行仅包含 BatteryFullChargedCapacity,第四行仅包含 BatteryHealth。
我究竟做错了什么?是否可以通过修改 select 语句将所有 4 个注册表值放在一行中?