Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Can I do this strictly in SQL*Plus?
Sorry, I should have given more conditions.
Please try under such conditions:
table1 and table2 are all very big tables, I doubt the UNION could do it, and do not bother to think about select in select, please;
only 2 select, I assume one on each table, may be allowed or say, possibly executed in good time frame;
please output like my format:
Total: the-sum-number
Count1: r1
Count2: r2
I do not know if a variable can take the result from the count, if someone help me that way, it may be better.
Thanks.
Maxim Demenko wrote:
> RK schrieb:
> > Can someone help me, please? -- I want to do the following steps, and
> > output strictly in SQL*Plus only:
> >
> > -1- select count(*) from table1;
> > -2- select count(*) from table2;
> >
> > Assume the results are r1 and r2, two numbers, and I want the output to
> > be like:
> >
> > Total: r1 + r2
> > Count1: r1
> > Count2: r2
> >
> > Can I do this strictly in SQL*Plus?
> >
> > Thanks.
> >
>
> There are many ways,
> for example
> SQL> select sum(cnt),nvl(tname,'total')
> 2 from (select count(*) cnt,'user_tables' tname from user_tables
> 3 union all select count(*) cnt,'user_indexes' tname from user_indexes)
> 4 group by rollup(tname)
> 5 /
>
> SUM(CNT) NVL(TNAME,'TOTAL')
> ---------- ------------------------------------
> 348 user_indexes
> 344 user_tables
> 692 total
>
> SQL>
>
> Best regards
>
> Maxim
Received on Tue Jun 07 2005 - 08:28:43 CDT
![]() |
![]() |