Solved

Oracle SQL select within select  with calculation

Posted on 2014-04-03
4
453 Views
Last Modified: 2014-04-03
I need help coding some SQL. THERE is one table called B_TABLE.

B_TABLE can have MANY Bills for 1 PROV
 
Each PROV can have many CL,
Each CL FOR A PROVIDER CAN HAVE  1 to many CA
 
Want to show EACH unique PROV where  and their CA / CL ratio
 
PROV       CL           CA      AMT
A                aa           123       10.00
A                aa           234         5.00
A                aa           234       20.00
A               aa            345       15.00
A               dd           456       25.00
A               ee           717       25.00
 
B               bb           877     100.00
B               cc             342    200.00
 
The query results for the example above should be
 
A   1.67    70.00
B   1        300.00
 
I am having trouble coding the SQL.
0
Comment
Question by:ktylerconk
  • 2
4 Comments
 
LVL 32

Expert Comment

by:awking00
ID: 39976032
Can you explain how those results were determined and what does the 1.67 represent and if the 300.00 for B represents a sum, why is A 70.00? I think a little more detail of what you want to accomplish would help.
0
 

Author Comment

by:ktylerconk
ID: 39976140
Sum of A should be 100.00. Sorry, I added rows.

Ratio of 1.66 is the CA divided by CL.   a flag will be generated if the ratio us greater than 2.
So if A had 6 CA's but only 2 CL's, there would be a flag raised because the ratio would be 3.
0
 
LVL 34

Accepted Solution

by:
johnsone earned 200 total points
ID: 39976451
Try this:

select prov, count(distinct ca) / count(distinct cl), sum(amt)
from b_table
group by prov;

Open in new window


It gives the result:

PROV	COUNT(DISTINCTCA)/COUNT(DISTINCTCL)	SUM(AMT)
A       1.666666666667                          100
B       1                                       300

Open in new window

0
 

Author Closing Comment

by:ktylerconk
ID: 39976556
Worked like a charm! Thank you!
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

I remember the day when someone asked me to create a user for an application developement. The user should be able to create views and materialized views and, so, I used the following syntax: (CODE) This way, I guessed, I would ensure that use…
Configuring and using Oracle Database Gateway for ODBC Introduction First, a brief summary of what a Database Gateway is.  A Gateway is a set of driver agents and configurations that allow an Oracle database to communicate with other platforms…
This video explains at a high level with the mandatory Oracle Memory processes are as well as touching on some of the more common optional ones.
This video shows how to copy an entire tablespace from one database to another database using Transportable Tablespace functionality.

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question