Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Subconsulta

Estas en el tema de Subconsulta en el foro de SQL Server en Foros del Web. Muy wenas compañeros!!! Tengo una duda aver si me podriais ayudar antes del lunes que me haría falta. El problema es el siguiente: Tengo dos ...
  #1 (permalink)  
Antiguo 23/01/2009, 18:22
 
Fecha de Ingreso: enero-2009
Mensajes: 37
Antigüedad: 16 años
Puntos: 0
Subconsulta

Muy wenas compañeros!!!

Tengo una duda aver si me podriais ayudar antes del lunes que me haría falta.
El problema es el siguiente:

Tengo dos tablas y se relacionan mediante otra tabla (debil). Tengo q sacar x ejemplo la pelicula de máxima takilla y se saca con max, hasta hay todo el bien. El problema es que, si quiero sacar en vez de la que tenga la maxima taquilla quiero sacar la 2 que mas taquilla tenga. Como lo puedo hacer???

Espero vuestra respuesta

Un saludo
  #2 (permalink)  
Antiguo 23/01/2009, 21:03
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 5 meses
Puntos: 180
Respuesta: Subconsulta

¿La descripcion de sus tablas?, para dar una repuesta mas cercana a la realidad, por cierto, ¿que tanto codigo lleva de su consulta?
  #3 (permalink)  
Antiguo 24/01/2009, 04:06
 
Fecha de Ingreso: enero-2009
Mensajes: 37
Antigüedad: 16 años
Puntos: 0
Respuesta: Subconsulta

La descripsciones de las tablas son:
Actores con sus nombre, apellidos etc, la debil que sale entre actores y peliculas con la clave ajenas de actores y peliculas, y las peliculas ocn su nombre la takilla etc.
Para averiguar la pelicula con mas taquilla e hecho lo siguiente:

Select t1.nombre, t2.nombre pila ( para q me salga el nombre y el nombre pila del actor)
From actores as t1, actorfil as t2, film as t3
Where (t1.codactores=t2.codactor and t2.codfilm=t3.codpel anda t3.taquilla=(select max (taquilla) from film as t1).

Con esto saco la pelicula los nmbre de los actores de la pelicula con mas taquilla. Pero mi pregunta es. En ve de sacar los nombres de los actores de la paquila con mas taquilla, sacarla de la 2 con mas taquilla.

Un saludo
  #4 (permalink)  
Antiguo 24/01/2009, 09:24
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 19 años, 4 meses
Puntos: 39
Respuesta: Subconsulta

Prueba asi:
Código sql:
Ver original
  1. [COLOR=black][FONT=Verdana]
  2. [COLOR=black][FONT=Verdana]SELECT t1.nombre, t2.nombre pila
  3. FROM actores AS t1, actorfil AS t2, film AS t3
  4. WHERE (t1.codactores=t2.codactor AND t2.codfilm=t3.codpel AND
  5. [COLOR=black][FONT=Verdana]t3.taquilla IN (SELECT top 2 taquilla FROM film AS t1 ORDER BY taquilla DESC)
  6. [/FONT][/COLOR]
[/FONT][/COLOR]
[/FONT][/COLOR]
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #5 (permalink)  
Antiguo 24/01/2009, 13:58
 
Fecha de Ingreso: enero-2009
Mensajes: 37
Antigüedad: 16 años
Puntos: 0
Respuesta: Subconsulta

Lo acabo de comprobar y me tiene que dar 3 resultado con la 2 mejor takilla y me da 4. Algun otra solucion??? espero tener la respuesta antes del lunes que es cuando me haria falta.

Un saludo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:54.