From: | Fredrik Wendt <fredrik(at)csbnet(dot)se> |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | ORDER BY TIMESTAMP_column ASC, NULL first |
Date: | 2004-02-12 10:06:26 |
Message-ID: | 20040212100626.GA21864@csbnet.se |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Hi!
I read posts telling me that NULL values are considered greater than
non-null values. Fine. Is there a way to explicitly reverse this?
I have the situation where a table holds IP-addresses. The table has
column of type timestamp, called assignedAt, which tells when the
address was assigned to a computer in our network.
What I'd like to do, is to get an IP-address that hasn't yet been
assigned to anyone, or the one with the smallest assignedAt (most likely
to not be in use).
CREATE TABLE IPv4Address (
id SERIAL PRIMARY KEY,
address INET NOT NULL UNIQUE,
assignedAt TIMESTAMP
);
The query to use would be,
SELECT ip.id FROM IPv4Address ip ORDER BY assignedAt ASC LIMIT 1;
with the exception that this returns rows with NULL at the end, instead
of at the beginning which is what I'd like.
How do achieve this with one query? I'm using Postgres 7.4.
And oh, I'm not on the list so please cc my adress in any replies!
Thanks in advance,
Fredrik Wendt
From | Date | Subject | |
---|---|---|---|
Next Message | Sumita Biswas (sbiswas) | 2004-02-12 11:40:38 | Function |
Previous Message | sad | 2004-02-12 08:45:10 | Re: cascade delete |