Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> RE: ORA-24347 (null column in aggregate function) - SQL*Plus

RE: ORA-24347 (null column in aggregate function) - SQL*Plus

From: Jacques Kilchoer <Jacques.Kilchoer_at_quest.com>
Date: Mon, 30 Apr 2001 14:00:49 -0700
Message-ID: <F001.002F5E11.20010430135550@fatcity.com>

> -----Original Message-----
> From: Tim Sawmiller [mailto:sawmillert_at_state.mi.us]
>
> Looks like you have user with no objects.  Try count(*)
> instead of count(object_name);

I don't think so Tim. If I said "count (*)" my query below would return 1 for users with no objects. count (*) counts all rows, count (object_name) would count only non-null values for object_name and should thus return 0 for a user with no objects.

Jacques R. Kilchoër
x8816

>
> >>> Jacques.Kilchoer_at_quest.com 04/30/01 02:25PM >>>
> I'm a little stumped. I'm using SQL*Plus 8.1.6.0.0 client to
> connect to an
> Oracle 8.0.5 database on a Windows NT server. I want to get
> the count of
> objects for each user, with a 0 count for users without any
> objects. But
> when i run the query, errors message ORA-24347 is returned.
> Why would that
> be?
> When I run the query directly on the server, using a SQL*Plus
> 8.0.5 client,
> the query returns the expected data with no errors. Is there a bug in
> Metalink for this? I didn't find anything, but maybe my
> searching skills
> need some honing. Should I stick with older versions of the
> SQL*Plus client?
>
> Results with 8.1.6 client to 8.0.5 database:
> SQL> select count (*) from dba_users where username is null ;
>

>   COUNT(*)

> ----------
>          0

>
> SQL> select count (*) from dba_objects where owner is null ;
>
>   COUNT(*)

> ----------
>          0

>
> SQL> select count (*) from dba_objects where object_name is null ;
>
>   COUNT(*)

> ----------
>          0

>
> SQL> select a.username, count (object_name)
>   2  from dba_users a, dba_objects b
>   3  where a.username = b.owner (+)
>   4  group by a.username ;

> ERROR:
> ORA-24347: Warning of a NULL column in an aggregate function
Received on Mon Apr 30 2001 - 16:00:49 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US