Subqueries should be useful for this. Code is commented, it will no longer show systems that have the cert in at least one of the filepaths. Sounded like that should be fine.
Select Top 1000000
tblAssets.AssetID,
tblAssets.AssetName,
tsysAssetTypes.AssetTypename,
tsysAssetTypes.AssetTypeIcon10 As icon,
tblAssets.IPAddress,
tblAssets.Lastseen,
tblAssets.Lasttried,
tblSoftwareUni.softwareName,
--tblFileVersions.FilePathfull, report has been changed to not show found paths
--was likely a source of you seeing duplicates
Case
When tblFileVersions.Found Is Null Then 'Not checked'
Else 'Not found'
--changed name
End As FilePresence
From tblAssets
Inner Join tsysAssetTypes On tsysAssetTypes.AssetType = tblAssets.Assettype
Inner Join tblSoftware On tblAssets.AssetID = tblSoftware.AssetID
Inner Join tblSoftwareUni On tblSoftwareUni.SoftID = tblSoftware.softID
--Changed to Left Join
Left Join tblFileVersions On tblAssets.AssetID = tblFileVersions.AssetID
Where
tblSoftwareUni.softwareName Like 'GSG Windows Application'
--might be good to remove the below line as well, not sure
And tblFileVersions.FilePathfull Like '%certadddate.txt%'
--And (tblFileVersions.Found Is Null Or tblFileVersions.Found = 0)
--This should make it so the report will not show assets that have the cert file
--in at least one location
And tblAssets.AssetID not in (
Select tblFileVersions.AssetID
From tblFileVersions
Where
tblFileVersions.FilePathfull Like '%certadddate.txt%'
)
And tblFileVersions.Found = 1
Order By tblAssets.AssetName