Re: How NULL is interpreted in Pgsql - Mailing list pgsql-sql

From Per-Olof Pettersson
Subject Re: How NULL is interpreted in Pgsql
Date
Msg-id 20010515.23382236@mis.configured.host
Whole thread Raw
In response to How NULL is interpreted in Pgsql  (Guru Prasad <pnguruji@yahoo.com>)
List pgsql-sql
Hi

In the condition "where id != 11" you state that the value should differ 
from null.
For a value to be different than 11 it has to be a value in the first 
place.

So in reality you state two things:
1. id must be a value
2. id must differ from 11

It is nothing specific with Postgresql but common to most(all) relational 
databases using SQL.

To get the desired result you can add "OR id IS NULL".

Result:
select * from junk where id != 11 OR id IS NULL;


Best regards
Per-Olof Pettersson

>>>>>>>>>>>>>>>>>> Original Message <<<<<<<<<<<<<<<<<<

On 2001-05-15, 10:16:22, pnguruji@yahoo.com (Guru Prasad) wrote regarding 
How NULL is interpreted in Pgsql:


> Dear Friends,

> I created a table with no 'unique constraints' which is depicted as
> follows.

> create table junk (id int, name varchar);

> Then, i inserted some records into the table. My table contents is listed
> below.

>      id      | name
> -------------+------
>  1001.000000 | bolt
>  1002.000000 | nut
>  1003.000000 |
>    11.000000 | screw
>              | cutter
>              | cutting table

> Then, i gave a select query for the above table. The select query is

> 'select * from junk where id != 11';

> To my surprise, it displayed all the records except those which had
> 'NULL' in the 'id' field.

> How is that possible ? (I mean it should displayed all the records except
> the matching condition).

> But, if i set PRIMARY KEY constraint to 'junk' table then it displays all
> the records (I can't say NULL here, but i can say '0').

> How NULL is processed in Postgres.

> Could any one has some clue.

> Regards,
> guru.

> bk SYSTEMS (P) Ltd.
>                                                     P . N . G U R U P R A 
S A D
> 
-------------------------------------------------------------------------------




> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
>     (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)


pgsql-sql by date:

Previous
From: Per-Olof Pettersson
Date:
Subject: Re: how to remove ?
Next
From: Thomas Swan
Date:
Subject: Re: Auto incrementing an integer