Groups | Blog | Home
all groups > sql server (microsoft) > december 2005 >

sql server (microsoft) : Syntax for Grouping in WHERE Clause


npverni NO[at]SPAM gmail.com
12/12/2005 4:35:33 PM
Can somone refresh me on the t-sql syntax for grouping where clauses
sql statements.

I have a table in this format:

fname (varchar) | lname(varchar)

And I have a list of names, ie:

Joe Bloggs
Jane Doe
Jon Doe

I want to select all records except these three people from the table.
I'm trying to do:

SELECT fname, lname
WHERE ( (fname <> 'Joe' ) AND (lname <> 'Bloggs') )
AND ( (fname <> 'Jane ' ) AND (lname <> 'Doe'))
AND ( (fname <> 'Jon' ) AND (lname <> 'Doe'))

When I run this in ent. mgr, it strips out the parenthesis, and
rewrites it as:

SELECT fname, lname
WHERE (fname <> 'Joe' ) AND (lname <> 'Bloggs')
AND (fname <> 'Jane ' ) AND (lname <> 'Doe')
AND (fname <> 'Jon' ) AND (lname <> 'Doe')

This doesn't seem to get the desired results, is there a better syntax
for this?
Thanx
SmartbizAustralia
12/13/2005 1:43:02 AM
When doing SQL Statements often double negatives are better.

Try:

SELECT fname, lname
WHERE fname + lname not in
('JoeBloggs','JaneDoe','JonDoe')

The issue is to get a full name per record.
AddThis Social Bookmark Button