Ver Mensaje Individual
  #5 (permalink)  
Antiguo 30/11/2014, 17:54
petra12
 
Fecha de Ingreso: enero-2011
Mensajes: 14
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Consulta múltiple, COUNT(*)

Perdón. Como era otra pregunta pensaba que tenía que abrir otro tema.

Tengo que calcular el índice de artículos de la universidad de Standford por investigador y año en la década de 1998-2008.

Tengo las siguientes tablas:
afiliations: ref_afiliation, name
authorafiliation: ref_afiliation,ref_author
papersauthor: ref_paper,ref_paper
authors: ref_paper,name
papersinfo:ref_paper,publiyear

Esto es lo que he hecho pero creo que o está del todo bien

Código MySQL:
Ver original
  1. CREATE VIEW paper_author AS
  2. SELECT ref_author, ref_paper FROM papersauthors WHERE ref_paper IN
  3. (SELECT ref_paper FROM papersinfo WHERE publiyear BETWEEN 1998 AND 2008) AND ref_author IN
  4.  (SELECT ref_author FROM authorafilIation WHERE ref_afiliation IN (SELECT ref_afiliation FROM afiliations WHERE university IN
  5. ("Stanford_University")));
Código MySQL:
Ver original
  1. SELECT ref_author,papersinfo.publiyear, COUNT(*)FROM paper_author INNER JOIN
  2. papersinfo ON  paper_author.ref_paper =papersinfo.ref_paper GROUP BY publiyear ORDER BY ref_author;
Gracias!

Última edición por gnzsoloyo; 30/11/2014 a las 18:32