→ 🚀Are you a Lansweeper Champion?! Join our Contributor Program Sign up here!

Community FAQ
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
quagmire0
Engaged Sweeper
Not very handy with SQL, so I could use some help with the following requirements:

Please provide inventory output from Lan Sweeper (using keywords: Microsoft, SQL, Citrix, Office against the Publisher and DisplayName fields).
For each machine, please provide:
• Machine Name
• Software Publisher
• Operating System (Version and Edition)
• Software Name
• Software Version (2007, 2010, 2012 etc.)
• Software Edition (Enterprise, Standard, Premium etc.)
• Last Scan Date
• Last Logon
• Location
• Processor Count
• Core Count
• Processor Vendor Brand

Thanks in advance!
1 ACCEPTED SOLUTION
Daniel_B
Lansweeper Alumni
For this you'll need to use several subqueries. We recommend as well to use multiple reports instead of only one as otherwise you will get a lot of duplicate rows.

For SQL server:

Select Top 1000000 tblAssets.AssetID,
tblAssets.AssetName,
tsysAssetTypes.AssetTypeIcon10 As icon,
tblOperatingsystem.Caption As OS,
tblSqlServers.displayVersion As [SQL server version],
tblSqlServers.skuName As [SQL server edition],
tblAssets.Lastseen,
tblAssets.Username,
tLastLogon.[last logon],
tblAssetCustom.Location,
CPUCount.[Count physical CPUs],
CPUCount.[Count CPU cores],
tblAssets.Processor
From tblAssets
Inner Join tblAssetCustom On tblAssets.AssetID = tblAssetCustom.AssetID
Inner Join tsysAssetTypes On tsysAssetTypes.AssetType = tblAssets.Assettype
Inner Join tblOperatingsystem
On tblAssets.AssetID = tblOperatingsystem.AssetID
Left Join tblSqlServers On tblAssets.AssetID = tblSqlServers.AssetID
Left Join (Select Max(tblCPlogoninfo.logontime) As [last logon],
tblCPlogoninfo.AssetID
From tblCPlogoninfo
Group By tblCPlogoninfo.AssetID) tLastLogon On tblAssets.AssetID =
tLastLogon.AssetID
Left Join (Select tblProcessor.AssetID,
Sum(tblProcessor.NumberOfLogicalProcessors) As [Count logical CPUs],
Sum(tblProcessor.NumberOfCores) As [Count CPU cores],
Count(tblProcessor.Caption) As [Count physical CPUs]
From tblProcessor
Group By tblProcessor.AssetID) CPUCount On tblAssets.AssetID =
CPUCount.AssetID
Where tblAssetCustom.State = 1
Order By tblAssets.AssetName


For Office and Citrix:

Select Top 1000000 tblAssets.AssetID,
tblAssets.AssetName,
tsysAssetTypes.AssetTypeIcon10 As icon,
tSoftware.SoftwarePublisher,
tblOperatingsystem.Caption As OS,
tSoftware.softwareName,
tSoftware.softwareVersion,
tblAssets.Lastseen,
tblAssets.Username,
tLastLogon.[last logon],
tblAssetCustom.Location,
CPUCount.[Count physical CPUs],
CPUCount.[Count CPU cores],
tblAssets.Processor
From tblAssets
Inner Join tblAssetCustom On tblAssets.AssetID = tblAssetCustom.AssetID
Inner Join tsysAssetTypes On tsysAssetTypes.AssetType = tblAssets.Assettype
Inner Join (Select tblSoftware.AssetID,
tblSoftwareUni.softwareName,
tblSoftwareUni.SoftwarePublisher,
tblSoftware.softwareVersion
From tblSoftware
Inner Join tblSoftwareUni On tblSoftwareUni.SoftID = tblSoftware.softID
Where (tblSoftwareUni.softwareName Like '%Microsoft office standard 20%') Or
(tblSoftwareUni.softwareName Like '%Microsoft office proplus 20%') Or
(tblSoftwareUni.softwareName Like '%Microsoft office ultimate 20%') Or
(tblSoftwareUni.softwareName Like '%Microsoft office home and business 20%')
Or
(tblSoftwareUni.softwareName Like '%Microsoft office professional plus 20%')
Or
(tblSoftwareUni.softwareName Like '%Microsoft office professional 20%') Or
(tblSoftwareUni.SoftwarePublisher Like 'Citrix%')) tSoftware
On tSoftware.AssetID = tblAssets.AssetID
Inner Join tblOperatingsystem
On tblAssets.AssetID = tblOperatingsystem.AssetID
Left Join (Select Max(tblCPlogoninfo.logontime) As [last logon],
tblCPlogoninfo.AssetID
From tblCPlogoninfo
Group By tblCPlogoninfo.AssetID) tLastLogon On tblAssets.AssetID =
tLastLogon.AssetID
Left Join (Select tblProcessor.AssetID,
Sum(tblProcessor.NumberOfLogicalProcessors) As [Count logical CPUs],
Sum(tblProcessor.NumberOfCores) As [Count CPU cores],
Count(tblProcessor.Caption) As [Count physical CPUs]
From tblProcessor
Group By tblProcessor.AssetID) CPUCount On tblAssets.AssetID =
CPUCount.AssetID
Where tblAssetCustom.State = 1
Order By tblAssets.AssetName,
tSoftware.SoftwarePublisher,
tSoftware.softwareName

View solution in original post

1 REPLY 1
Daniel_B
Lansweeper Alumni
For this you'll need to use several subqueries. We recommend as well to use multiple reports instead of only one as otherwise you will get a lot of duplicate rows.

For SQL server:

Select Top 1000000 tblAssets.AssetID,
tblAssets.AssetName,
tsysAssetTypes.AssetTypeIcon10 As icon,
tblOperatingsystem.Caption As OS,
tblSqlServers.displayVersion As [SQL server version],
tblSqlServers.skuName As [SQL server edition],
tblAssets.Lastseen,
tblAssets.Username,
tLastLogon.[last logon],
tblAssetCustom.Location,
CPUCount.[Count physical CPUs],
CPUCount.[Count CPU cores],
tblAssets.Processor
From tblAssets
Inner Join tblAssetCustom On tblAssets.AssetID = tblAssetCustom.AssetID
Inner Join tsysAssetTypes On tsysAssetTypes.AssetType = tblAssets.Assettype
Inner Join tblOperatingsystem
On tblAssets.AssetID = tblOperatingsystem.AssetID
Left Join tblSqlServers On tblAssets.AssetID = tblSqlServers.AssetID
Left Join (Select Max(tblCPlogoninfo.logontime) As [last logon],
tblCPlogoninfo.AssetID
From tblCPlogoninfo
Group By tblCPlogoninfo.AssetID) tLastLogon On tblAssets.AssetID =
tLastLogon.AssetID
Left Join (Select tblProcessor.AssetID,
Sum(tblProcessor.NumberOfLogicalProcessors) As [Count logical CPUs],
Sum(tblProcessor.NumberOfCores) As [Count CPU cores],
Count(tblProcessor.Caption) As [Count physical CPUs]
From tblProcessor
Group By tblProcessor.AssetID) CPUCount On tblAssets.AssetID =
CPUCount.AssetID
Where tblAssetCustom.State = 1
Order By tblAssets.AssetName


For Office and Citrix:

Select Top 1000000 tblAssets.AssetID,
tblAssets.AssetName,
tsysAssetTypes.AssetTypeIcon10 As icon,
tSoftware.SoftwarePublisher,
tblOperatingsystem.Caption As OS,
tSoftware.softwareName,
tSoftware.softwareVersion,
tblAssets.Lastseen,
tblAssets.Username,
tLastLogon.[last logon],
tblAssetCustom.Location,
CPUCount.[Count physical CPUs],
CPUCount.[Count CPU cores],
tblAssets.Processor
From tblAssets
Inner Join tblAssetCustom On tblAssets.AssetID = tblAssetCustom.AssetID
Inner Join tsysAssetTypes On tsysAssetTypes.AssetType = tblAssets.Assettype
Inner Join (Select tblSoftware.AssetID,
tblSoftwareUni.softwareName,
tblSoftwareUni.SoftwarePublisher,
tblSoftware.softwareVersion
From tblSoftware
Inner Join tblSoftwareUni On tblSoftwareUni.SoftID = tblSoftware.softID
Where (tblSoftwareUni.softwareName Like '%Microsoft office standard 20%') Or
(tblSoftwareUni.softwareName Like '%Microsoft office proplus 20%') Or
(tblSoftwareUni.softwareName Like '%Microsoft office ultimate 20%') Or
(tblSoftwareUni.softwareName Like '%Microsoft office home and business 20%')
Or
(tblSoftwareUni.softwareName Like '%Microsoft office professional plus 20%')
Or
(tblSoftwareUni.softwareName Like '%Microsoft office professional 20%') Or
(tblSoftwareUni.SoftwarePublisher Like 'Citrix%')) tSoftware
On tSoftware.AssetID = tblAssets.AssetID
Inner Join tblOperatingsystem
On tblAssets.AssetID = tblOperatingsystem.AssetID
Left Join (Select Max(tblCPlogoninfo.logontime) As [last logon],
tblCPlogoninfo.AssetID
From tblCPlogoninfo
Group By tblCPlogoninfo.AssetID) tLastLogon On tblAssets.AssetID =
tLastLogon.AssetID
Left Join (Select tblProcessor.AssetID,
Sum(tblProcessor.NumberOfLogicalProcessors) As [Count logical CPUs],
Sum(tblProcessor.NumberOfCores) As [Count CPU cores],
Count(tblProcessor.Caption) As [Count physical CPUs]
From tblProcessor
Group By tblProcessor.AssetID) CPUCount On tblAssets.AssetID =
CPUCount.AssetID
Where tblAssetCustom.State = 1
Order By tblAssets.AssetName,
tSoftware.SoftwarePublisher,
tSoftware.softwareName

Reports & Analytics

Ask about reports you're interested in and share reports you've created. Subscribe to receive daily updates of reports shared in the Community.

New to Lansweeper?

Try Lansweeper For Free

Experience Lansweeper with your own data.
Sign up now for a 14-day free trial.

Try Now