Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion Groups
Database Servers
DB2InformixIngresMS SQLOraclePervasive.SQLPostgreSQLProgressSybase
Desktop Databases
FileMakerFoxProMS AccessParadox
General
General DB TopicsDatabase Theory
Related Topics
Java Development.NET DevelopmentVB DevelopmentMore Topics ...

Database Forum / Oracle / Oracle Server / April 2008

Tip: Looking for answers? Try searching our database.

Messed Up Query

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Mtek - 28 Apr 2008 18:51 GMT
Hi,

I have this query:

SELECT q10.q10_count,
vi.mgr_flag,vi.inst_type,vi.inst_num,vi.inst_cst,vi.inst_zip,vi.inst_phone,vi.url,vi.turnover,vi.hold_cnt,
vi.date_,vi.inst_size,vi.inst_dchg,

vh.ticker,vh.q0_shares,vh.q1_shares,vh.q0q1_grwth,vh.q0q1_dchg,vh.shares_out,
mt.comp_name, sd.sector_name, p.closing
FROM vinst vi, vhold vh, master_table mt, stock_data sd, prices p,
    (SELECT count(*) q10_count FROM vhold vh
     WHERE q1_shares = 0 GROUP BY vh.ticker) q10
WHERE inst_name = 'Yacktman Fund'
 AND vi.inst_num = vh.inst_num
 AND vh.ticker = mt.ticker
 AND mt.m_ticker = sd.m_ticker
 AND mt.m_ticker = p.m_ticker;

Take a look at the inner query in the FROM clause:
    (SELECT count(*) q10_count FROM vhold vh
     WHERE q1_shares = 0 GROUP BY vh.ticker) q10

I basically need the same criteria applied as the outer query.  Do I
have to re-list the criteria?  I'll have to do that count for 5
fields.  It will make this query WAY long.......

Thanks!

John
Peter Nilsson - 29 Apr 2008 00:17 GMT
> Hi,
>
[quoted text clipped - 22 lines]
> have to re-list the criteria?  I'll have to do that count for 5
> fields.  It will make this query WAY long.......

I can't tell for sure, but it sounds like you just need an analytical
function in the outer query...

   count(*) over (partition by vh.ticker)

...or a selective count...

 sum(decode(vh.q1_shares, 0, 1, 0)) over (partition by vh.ticker)

--
Peter
Robert Klemme - 29 Apr 2008 10:18 GMT
> Hi,
>
[quoted text clipped - 22 lines]
> have to re-list the criteria?  I'll have to do that count for 5
> fields.  It will make this query WAY long.......

I don't see a join with q10.  Is a cross join really what you intend?

robert
Mtek - 29 Apr 2008 13:20 GMT
> > Hi,
>
[quoted text clipped - 26 lines]
>
> robert

Well, I want to select a certain criteria from X number of tables.  I
also want a COUNT of certain columns with their own critera.  And, I'm
trying to put this all into one query.......
Mtek - 29 Apr 2008 13:51 GMT
> > Hi,
>
[quoted text clipped - 26 lines]
>
> robert

Well, what I am trying to do is to select a bunch of data, then in the
same query, I want to do a count on a column with it;s own criteria
based on the results of the original select.

Does that make sense?

Can an OVER help me here?  I'm trying to look at it and understand
it.......
Robert Klemme - 30 Apr 2008 22:42 GMT
>>> Hi,
>>> I have this query:
[quoted text clipped - 24 lines]
>
> Does that make sense?

I'm afraid, no.  Maybe I'm too tired right now but "select a bunch of
data" is not very precise.  It is especially unclear to me whether you
need the "bunch" only for counting purposes or are interested in the
result as well.

Also, your remark "based on the results of the original select" might
indicate that you have a too procedural view of SQL.

> Can an OVER help me here?  I'm trying to look at it and understand
> it.......

Maybe.  Can you try to explain more elaborately what you have as input
and expect as output?

Kind regards

    robert
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2010 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.