At 12:07 17/07/00 +1000, Carolyn Lu Wong wrote:
>I have table with the following definition:
>
> create table table1(
> account_no int4,
> start_date_tme datetime
> ....
> );
>
>The table may contain null values for start_date_time.
>
>When I run the following SQL query, it fails:
>
> select * from table1
> where start_date_time::date >= '01/01/2000'::date
> and start_date_time::date <= '01/01/2001'::date;
>
>I get error message 'Unable to convert null datetime to date.
>
>It's fine if I run the same SQL query with added condition as follows:
>
> select * from table1
>> where account_no = 1
> and start_date_time::date >= '01/01/2000'::date
> and start_date_time::date <= '01/01/2001'::date;
>
>Is this a bug? Or there's an logical explaination for this?
The most logical explanation is that there are no null values in
start_date_time when account_no = 1.
Try select count(*) from table1 where account_no = 1 and start_date_time is
null;
and see if you get 0.
----------------------------------------------------------------
Philip Warner | __---_____
Albatross Consulting Pty. Ltd. |----/ - \
(A.C.N. 008 659 498) | /(@) ______---_
Tel: (+61) 0500 83 82 81 | _________ \
Fax: (+61) 0500 83 82 82 | ___________ |
Http://www.rhyme.com.au | / \| | --________--
PGP key available upon request, | /
and from pgp5.ai.mit.edu:11371 |/