Q:

How to not display an item in select query? 

I feel a little stupid asking this because I feel like this is very easy, but for some reason I'm not able to update a query to not select a specific item based on two criteria. 
Let's say I have data like this:
 ID       Name       Variant     Count1
 110      Bob        Type1       0
 110      Bob        Type2       1
 120      John       Type1       1

So as you can see we have two BOB rows with same ID but different variant (type1 and type2).  I want to be able to only see one of the Bob's.  
Desired result:
 110      Bob        Type2
 120      John       Type1

So what I've been doing is something like
 Select ID, Name, Variant, sum(count1) from tbl1
 where (id not in (110) and Variant <> 'type1')
 Group by Id,name,variant

Please don't use COUNT as a criteria, because in my example it just so happens that Count=0 for the row that I don't want to see.  It can vary. 
I have many rows where I can have multiple instances of the same id with a variety of different VARIANTS.  I'm looking to exclude certain instances of ID based on Variant value
UPDATE:
It has nothing to do with latest variant, it has to do with a specific variant.  So I'm just looking to basically be able to use a clause where i used the ID and VARIANT, in order to remove that particular row.  

A:

Aggregating (grouping) the data like you're doing is one way to do it, although the where condition is a little overkill.  If all you want to do is see the unique combinations of ID and Name, then another approach is just to use the "distinct" statement. 
select distinct Id, Name 
from tbl1

If you always want to see data from a specific Variant then just include that condition in your where clause and you don't need to worry about using distinct or aggregates. 
select * 
from tbl1
where Variant = 'Type 1'

If you always want to see the record associated with the latest Variant, then you can use a window function to do so. 
select a.Id, a.Name, a.Variant
from 
    (
        select *, row_number() over (partition by Id order by Variant desc) as RowRank
        from tbl1
    ) a
where RowRank = 1
;

If there is not a predictable pattern for exclusion then you will have to maintain an exclusion list.  It's not ideal but if you want to maintain this in the SQL itself then you could have a query like the one below.  
select *
from tbl1
-- Define rows to exlcude
where not (Id = 110 and Variant = 'Type 1') -- Your example
and not (Id = 110 and Variant = 'Type 3') -- Theoretical example
;

A better solution would be to create an exclusion reference table to maintain all exclusions within.  Then you could simply negative join to that table to retrieve your desired results.