This is what I came up with.
Code:
SELECT DISTINCT
AeXInv_AeX_AC_Primary_User.[User] AS Username, AeXInv_AeX_AC_TCPIP.[Host Name] AS [Computer Name],
AeXInv_AeX_OS_Add_Remove_Programs.Name AS [Program Name]
FROM AeXInv_AeX_AC_Primary_User INNER JOIN
AeXInv_AeX_AC_TCPIP ON AeXInv_AeX_AC_Primary_User.WrkstaId = AeXInv_AeX_AC_TCPIP.WrkstaId INNER JOIN
AeXInv_AeX_OS_Add_Remove_Programs ON AeXInv_AeX_AC_Primary_User.WrkstaId = AeXInv_AeX_OS_Add_Remove_Programs.WrkstaId
WHERE (AeXInv_AeX_OS_Add_Remove_Programs.Name LIKE N'%Photoshop%')
Remember, if you have primary user as an output that you need distinct because primary user is recalculated every month or you need to add the Month column, deselect it as an output and just hard code it with the current month. If you're users change machines frequently then you'll want to put in a month. If they don't, you still may get a few duplicates if they have more than one machine with the application installed.