Have a look at this thread , it gives you 85% of what your after :- https://www.lansweeper.com/forum/yaf_postst15067_Total-Space-and-Free-Space.aspx#post51173 , you just need to add the memory count like this :
Select Top 1000000 tblAssets.AssetID,
tblAssets.AssetName,
tblAssets.Domain,
tblAssets.Username,
tblAssets.Userdomain,
Coalesce(tsysOS.Image, tsysAssetTypes.AssetTypeIcon16) As icon,
tblAssets.IPAddress,
tsysIPLocations.IPLocation,
tblAssetCustom.Model,
tblAssetCustom.Manufacturer,
tsysOS.OSname As OS,
tblAssets.SP,
tblAssets.Lastseen,
tblAssets.Lasttried,
tblDiskdrives.Caption,
Cast(Cast(tblDiskdrives.Freespace As bigint) / 1024 / 1024 / 1024 As
numeric) As FreeGB,
Cast(Cast(tblDiskdrives.Size As bigint) / 1024 / 1024 / 1024 As numeric) As
TotalSizeGB,
Floor(Cast(Cast(tblComputersystem.TotalPhysicalMemory As bigint) / 1024 /
1024 As numeric)) As [Total Memory],
tblDiskdrives.Lastchanged
From tblAssets
Inner Join tblDiskdrives On tblAssets.AssetID = tblDiskdrives.AssetID
Inner Join tblAssetCustom On tblAssets.AssetID = tblAssetCustom.AssetID
Inner Join tblState On tblState.State = tblAssetCustom.State
Inner Join tsysAssetTypes On tsysAssetTypes.AssetType = tblAssets.Assettype
Inner Join tsysIPLocations On tsysIPLocations.LocationID =
tblAssets.LocationID
Left Outer Join tsysOS On tblAssets.OScode = tsysOS.OScode
Inner Join tblComputersystem On tblAssets.AssetID = tblComputersystem.AssetID
Where Cast(Cast(tblDiskdrives.Size As bigint) / 1024 / 1024 / 1024 As numeric)
<> 0 And tblState.Statename = 'Active' And tblDiskdrives.DriveType = 3
Order By tblAssets.Domain,
tblAssets.AssetName,
tblDiskdrives.Caption
Taken from this thread : https://www.lansweeper.com/forum/yaf_postst4172_Change-the-memeory-size-in-reports-to-MB.aspx#post19639