chamara
chamara

Reputation: 12711

SQL query ignores "not between"

I have a data source like following

enter image description here

If I ran the following sql query it removes all the records with "Seg Type" MOD and ignores the Fnn range given.

select * from NpsoQueue
where SegmentType not in ('MOD')
and Fnn not between 0888452158 and 0888452158

I want the query to consider both conditions. So, if I ran the query it should remove only the first record

Upvotes: 0

Views: 52

Answers (1)

Nick.Mc
Nick.Mc

Reputation: 19184

The logic in your where clause is incorrect

Use

select * from NpsoQueue
where NOT (
    SegmentType = 'MOD'
    and Fnn between '0888452158' and '0888452158'
    )

Also, a number with a leading zero is a string literal so you need to put single quotes around it to preserve the leading zero and stop implicit casts happening

As mentioned by @TriV you could also use OR. These are fundamental boolean logic concepts, i.e. not related to SQL Server or databases

Upvotes: 3

Related Questions