Here is a break down of one way to get the result you want:DECLARE @Foo TABLE (CustName VARCHAR(50), ItemAssigned VARCHAR(50))INSERT @Foo (CustName, ItemAssigned)VALUES('Joe Bloggs', 'Laptop'),('Joe Bloggs', 'Monitor'),('Joe Bloggs', 'Keyboard'),('Bob Smith', 'Laptop'),('Bob Smith', 'Monitor'),('Bob Smith', 'Keyboard'),('Sam Jones', 'Desktop'),('Sam Jones', 'Monitor'),('Sam Jones', 'Keyboard')-- Get all DISTINCT CustomersSELECT DISTINCT CustNameFROM @Foo-- Get all Users with laptopsSELECT CustNameFROM @FooWHERE ItemAssigned = 'LapTop'-- Combine QueriesSELECT *FROM ( SELECT DISTINCT CustName FROM @Foo ) AS CustLEFT OUTER JOIN ( SELECT CustName FROM @Foo WHERE ItemAssigned = 'LapTop' ) AS CustWithLaptops ON Cust.CustName = CustWithLaptops.CustNameWHERE CustWithLaptops.CustName IS NULL