简体   繁体   English

SCCM / SQL 多个值到一列

[英]SCCM / SQL Multiple values to one column

I have the SCCM Following SQL query that returns 1 IP address for each column, I wanted to collect all IPs for a single column (separated by semicolon ) so I don't have machine name duplicates.我有 SCCM Following SQL 查询,它为每列返回 1 IP 地址,我想收集单个列的所有 IP(以分号分隔),因此我没有重复的机器名称。 Any suggestions?有什么建议么?

the goal is to return目标是返回

ServerName IPAddress服务器名称 IP 地址
Server01 192.168.1.1;192.168.1.2;fe80::61d2:9748:f21f:d4f3 Server01 192.168.1.1;192.168.1.2;fe80::61d2:9748:f21f:d4f3

    SELECT
    DISTINCT(CPU.SystemName0) AS [ServerName],
    IPA.IP_Addresses0 AS [IPAddress],
    CS.Manufacturer0 AS [Manufacturer],
    CS.Model0 AS [Model],
    PCB.SerialNumber0 AS [SerialNumber],
    PM.TotalPhysicalMemory0 AS [Memory]
 FROM [dbo].[v_GS_PROCESSOR] CPU
    LEFT OUTER JOIN dbo.v_GS_COMPUTER_SYSTEM CS
 ON CS.ResourceID = CPU.ResourceID
    LEFT OUTER JOIN dbo.v_GS_PC_BIOS PCB
 ON CS.ResourceID = PCB.ResourceID
    LEFT OUTER JOIN dbo.v_GS_X86_PC_MEMORY PM
 ON CS.ResourceID = PM.ResourceID
    LEFT OUTER JOIN dbo.v_RA_System_IPAddresses IPA
 ON CS.ResourceID = IPA.ResourceID
 GROUP BY
 CPU.SystemName0,
     IPA.IP_Addresses0,
     CS.Manufacturer0,
     CS.Model0,
     PCB.SerialNumber0,
     PM.TotalPhysicalMemory0
 ORDER BY [ServerName] ASC
SELECT CONCAT(
   CPU.SystemName0,
   ';',
   min(IPA.IP_Addresses0),
   ';',
   min(CS.Manufacturer0),
   ';',
   min(CS.Model0),
   ';',
   min(PCB.SerialNumber0),
   ';',
   min(PM.TotalPhysicalMemory0))
FROM [dbo].[v_GS_PROCESSOR] CPU
 LEFT OUTER JOIN dbo.v_GS_COMPUTER_SYSTEM CS
ON CS.ResourceID = CPU.ResourceID
 LEFT OUTER JOIN dbo.v_GS_PC_BIOS PCB
ON CS.ResourceID = PCB.ResourceID
 LEFT OUTER JOIN dbo.v_GS_X86_PC_MEMORY PM
ON CS.ResourceID = PM.ResourceID
 LEFT OUTER JOIN dbo.v_RA_System_IPAddresses IPA
ON CS.ResourceID = IPA.ResourceID
GROUP BY CPU.SystemName0
ORDER BY CPU.SystemName0 ASC

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM