Advertisement
para_bellum

R6 beta - dblp

May 23rd, 2013
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 0.90 KB | None | 0 0
  1. SELECT aij1.Journal, COUNT( art1.PubID ) AS art_count, COUNT(art1.PubID)/(2012-MIN_YEAR.minYear) AS art_avg
  2. FROM article_in_journal aij1, pub_article art1, (
  3.     SELECT pub.YEAR AS 'minYear', aij2.Journal AS 'minYearJour'
  4.         FROM publication pub, article_in_journal aij2
  5.         WHERE pub.PubKey=aij2.ArtID
  6.         GROUP BY aij2.Journal
  7.         HAVING MIN(pub.YEAR)
  8. ) MIN_YEAR -- get minimum year of publication for each journal
  9. WHERE art1.PubID = aij1.ArtID AND MIN_YEAR.minYearJour=aij1.Journal
  10. GROUP BY aij1.Journal
  11. HAVING MAX( art1.Volume ) > (-- keep only journal above average
  12.     SELECT AVG( volume )
  13.     FROM (
  14.         SELECT art.Volume AS 'volume'
  15.         FROM pub_article art, article_in_journal aij
  16.         WHERE art.PubID = aij.ArtID
  17.         GROUP BY aij.Journal
  18.         HAVING MAX( art.Volume )
  19.     ) VOLUME_PER_JOURNAL -- get average volume per year for each journal
  20. )
  21. -- Showing rows 0 - 29 ( 87 total, Query took 78.1749 sec)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement