The best thing to do is ensure that you are not excluding results because of OS specific tables.
The number of cores is only scanned for Windows assets, so you won't see it for other types. Since all the other information you want is in general asset tables, I've filtered the results so that it only displays Windows, Linux and Macs.
Select Distinct Top 1000000 tblAssets.AssetID,
tblAssets.AssetName,
tsysAssetTypes.AssetTypeIcon10 As icon,
tblAssetCustom.Model,
tblAssetCustom.Manufacturer,
tblAssets.IPAddress,
tblAssets.Description,
tblAssets.FQDN,
tblAssetCustom.Location,
tblAssetCustom.Serialnumber,
tblAssetCustom.Custom1,
tblAssetCustom.Custom2,
tblAssetCustom.Custom3,
tblAssetCustom.Custom4,
tblAssetCustom.Custom5,
tblAssetCustom.Custom6,
tblAssetCustom.Custom7,
tblAssetCustom.Custom8,
tblAssetCustom.Custom9,
tblAssetCustom.Custom10,
tblAssetCustom.Custom11,
tblAssetCustom.Custom12,
tblAssetCustom.Custom13,
tblAssets.Memory,
tblAssets.NrProcessors As [# CPU],
tblProcessor.NumberOfCores As [# Cores],
tblAssets.Processor,
tblState.Statename As State,
tsysAssetTypes.AssetTypename
From tblAssets
Inner Join tblAssetCustom On tblAssets.AssetID = tblAssetCustom.AssetID
Inner Join tsysAssetTypes On tsysAssetTypes.AssetType = tblAssets.Assettype
Inner Join tsysIPLocations On tsysIPLocations.LocationID =
tblAssets.LocationID
Left Join tblADComputers On tblAssets.AssetID = tblADComputers.AssetID
Inner Join tblState On tblState.State = tblAssetCustom.State
Left Join tsysOS On tblAssets.OScode = tsysOS.OScode
Left Join tblProcessor On tblAssets.AssetID = tblProcessor.AssetID
Where tsysAssetTypes.AssetTypename In ('Windows', 'Linux', 'Apple Mac')
Order By tblAssets.AssetName