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

[SOLUCIONADO] Como hacer esta consulta en SQL SERVER

Estas en el tema de Como hacer esta consulta en SQL SERVER en el foro de SQL Server en Foros del Web. Hola, ¿como están? De que forma puedo representar la siguiente consulta: Tomaré como ejemplo lo siguiente: PROGRAMACION(nomProg, dia, horaComienzo, horaFin) PROGRAMAS(nomProg, genero) PREFERENCIAS(nomProg, dia, horaComienzo, ...
  #1 (permalink)  
Antiguo 25/04/2014, 08:07
ilu7ionHD
Invitado
 
Mensajes: n/a
Puntos:
Como hacer esta consulta en SQL SERVER

Hola, ¿como están?
De que forma puedo representar la siguiente consulta:
Tomaré como ejemplo lo siguiente:

PROGRAMACION(nomProg, dia, horaComienzo, horaFin)
PROGRAMAS(nomProg, genero)
PREFERENCIAS(nomProg, dia, horaComienzo, ciTele)

En caso de que me piden devolver por ejemplo los nombres de los programas más vistos el día Lunes.

Yo se hacer el más visto, con "MAX" pero no recuerdo como hacer LOS mas vistos,
ayuda por favor, de antemano muchas gracias
  #2 (permalink)  
Antiguo 25/04/2014, 08:47
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Como hacer esta consulta en SQL SERVER

primero obtendrias un count agrupado por programas para saber cual es el que tiene mas vistas el dia lunes algo asi:

Código SQL:
Ver original
  1. SELECT numprog,dia,COUNT(*) AS total FROM preferencias WHERE dia='lunes'

ahora con ese query puedes obtener el maximo para saber cual fue el programa mas visto:

Código SQL:
Ver original
  1. SELECT MAX(total), numprog,dia FROM(
  2. SELECT numprog,dia,COUNT(*) AS total FROM preferencias WHERE dia='lunes'
  3. ) t1
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 25/04/2014, 09:10
ilu7ionHD
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como hacer esta consulta en SQL SERVER

Si, pero eso muestra el MAS visto. Como hago para hacer LOS MAS VISTOS, había un truco que yo hacía en algebra relacional creo que era comparar todos contra todos asi me daba los MAS vistos, nose.

Cita:
Iniciado por Libras Ver Mensaje
primero obtendrias un count agrupado por programas para saber cual es el que tiene mas vistas el dia lunes algo asi:

Código SQL:
Ver original
  1. SELECT numprog,dia,COUNT(*) AS total FROM preferencias WHERE dia='lunes'

ahora con ese query puedes obtener el maximo para saber cual fue el programa mas visto:

Código SQL:
Ver original
  1. SELECT MAX(total), numprog,dia FROM(
  2. SELECT numprog,dia,COUNT(*) AS total FROM preferencias WHERE dia='lunes'
  3. ) t1
  #4 (permalink)  
Antiguo 25/04/2014, 09:43
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Como hacer esta consulta en SQL SERVER

los mas vistos? cuantos el top 10, o ordenados de mayor a menor :P

Código SQL:
Ver original
  1. SELECT total, numprog,dia FROM(
  2. SELECT numprog,dia,COUNT(*) AS total FROM preferencias WHERE dia='lunes'
  3. ) t1 ORDER BY total DESC

o puedes usar un top 10, top 20 no se....
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 25/04/2014, 09:48
ilu7ionHD
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como hacer esta consulta en SQL SERVER

¿Como seria el top 10?

Cita:
Iniciado por Libras Ver Mensaje
los mas vistos? cuantos el top 10, o ordenados de mayor a menor :P

Código SQL:
Ver original
  1. SELECT total, numprog,dia FROM(
  2. SELECT numprog,dia,COUNT(*) AS total FROM preferencias WHERE dia='lunes'
  3. ) t1 ORDER BY total DESC

o puedes usar un top 10, top 20 no se....
  #6 (permalink)  
Antiguo 25/04/2014, 10:07
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Como hacer esta consulta en SQL SERVER

Libras: ¿Me podría ayudar a mi también a hacer mi tarea?
__________________
MCTS Isaias Islas
  #7 (permalink)  
Antiguo 25/04/2014, 10:08
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Como hacer esta consulta en SQL SERVER

mande??? esta si te la dejo de tarea.....

ponle en google

top sql server

y luego vienes y comentas :)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #8 (permalink)  
Antiguo 25/04/2014, 10:16
ilu7ionHD
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como hacer esta consulta en SQL SERVER

Jajaja descansas, me tienen podrido enserio diciendo haceme la tarea, yo no haría eso, solo me fijo en exámenes viejos y cuando no entiendo pregunto!

Cita:
Iniciado por iislas Ver Mensaje
Libras: ¿Me podría ayudar a mi también a hacer mi tarea?
  #9 (permalink)  
Antiguo 25/04/2014, 10:42
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Como hacer esta consulta en SQL SERVER

amigo, no quiero entrar en polémica contigo, solo que deberías entender que TODOS los que aquí participamos lo hacemos con agrado, pero nos (me, en forma personal), que quieran recibir punto y comas para resolver una duda.

¿Cuánto tiempo le has invertido a investigar tu solución?

Como bien dice Libras, busca en GOOGLE, si aun tienes dudas, vuelves y nos planteas tu duda puntual y con gusto de ayudaremos.

Saludos
__________________
MCTS Isaias Islas
  #10 (permalink)  
Antiguo 25/04/2014, 11:11
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Como hacer esta consulta en SQL SERVER

Creo que lo que te están sugiriendo es que hagas esta consulta: TOP 10 SQL SERVER EJEMPLOS, donde vas a encontrar bastantes links útiles, con ejemplos de diverso tipo.

Mi sugerencia es empezar por el Manual de Referencia (siempre es la mejor opcion para comenzar)
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #11 (permalink)  
Antiguo 28/04/2014, 10:27
ilu7ionHD
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como hacer esta consulta en SQL SERVER

Cuándo pregunto aquí es porque ya busque en el cuaderno y en google y no encontré nada, con esto no quiero decir que no este en google sino que busco para el traste.
Ninguna de mis preguntas han sido tareas, simplemente yo cuando preparo exámenes, exijo tener los exámenes anteriores y los hago de cero, cuando no entiendo algo pregunto pero siempre dicen lo mismo "no hacemos tarea", grrrrrr!
Saludos
  #12 (permalink)  
Antiguo 28/04/2014, 10:44
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Como hacer esta consulta en SQL SERVER

No te enojes, pero en ese link que te puse (algo en broma) te llevaba a una busqueda que devuelve decenas de ejemplos de cómo hacer el TOP 10 en SQL Server.
¿AL menos te pusiste a leer alguno de ellos?
La solución a tu caso la vi al menos en siete de esos links.

En serio.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #13 (permalink)  
Antiguo 02/05/2014, 13:13
ilu7ionHD
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como hacer esta consulta en SQL SERVER

Si jaja pero insisto, no es lo que yo preguntaba!
Saludos

Cita:
Iniciado por gnzsoloyo Ver Mensaje
No te enojes, pero en ese link que te puse (algo en broma) te llevaba a una busqueda que devuelve decenas de ejemplos de cómo hacer el TOP 10 en SQL Server.
¿AL menos te pusiste a leer alguno de ellos?
La solución a tu caso la vi al menos en siete de esos links.

En serio.
  #14 (permalink)  
Antiguo 03/05/2014, 11:26
 
Fecha de Ingreso: diciembre-2011
Mensajes: 77
Antigüedad: 12 años, 3 meses
Puntos: 2
Respuesta: Como hacer esta consulta en SQL SERVER

SELECT TOP 10 total, numprog,dia FROM(
SELECT numprog,dia,COUNT(*) AS total FROM preferencias WHERE dia='lunes'
) t1 ORDER BY total DESC
  #15 (permalink)  
Antiguo 08/05/2014, 19:23
ilu7ionHD
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como hacer esta consulta en SQL SERVER

salveeeee :D :D :D :D
  #16 (permalink)  
Antiguo 12/05/2014, 08:21
 
Fecha de Ingreso: noviembre-2013
Ubicación: Nuevo Leon
Mensajes: 70
Antigüedad: 10 años, 5 meses
Puntos: 2
Respuesta: Como hacer esta consulta en SQL SERVER

Cita:
Iniciado por ilu7ionHD Ver Mensaje
Pregunto estupideces siempre lose lose :3
Cuando me reciba, el diploma será en parte de Libras, chuidiang y gnzsoloyo , jaja

Simplemente no pude dejar pasar eso!!!!
__________________
Buen dia.
Jessy Rmz.
No seas como el caminante del desierto que sólo deja una huella; el conocimiento se alcanza con el tiempo y unas cuantas lunas.
  #17 (permalink)  
Antiguo 06/10/2014, 11:32
ilu7ionHD
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como hacer esta consulta en SQL SERVER

Cita:
Iniciado por jessy_050909 Ver Mensaje
Simplemente no pude dejar pasar eso!!!!

Jajajajajja :)

Etiquetas: server, siguiente, sql
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 05:42.