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

Tomar datos de dos columnas y ordenar de mayor a menor

Estas en el tema de Tomar datos de dos columnas y ordenar de mayor a menor en el foro de Bases de Datos General en Foros del Web. Tengo esta tabla con 50 registros Columnas Jugador1 Jugador2 puntos1 puntos2 puntos1 le corresponde a jugador1 y así. Necesito mostrar las 10 puntuaciones más altas. ...
  #1 (permalink)  
Antiguo 11/03/2019, 16:33
 
Fecha de Ingreso: noviembre-2005
Mensajes: 132
Antigüedad: 13 años, 11 meses
Puntos: 2
Tomar datos de dos columnas y ordenar de mayor a menor

Tengo esta tabla con 50 registros

Columnas
Jugador1 Jugador2 puntos1 puntos2

puntos1 le corresponde a jugador1 y así.

Necesito mostrar las 10 puntuaciones más altas.

dentro de las 10 puntuaciones muy altas un solo registro puede tener dos.

¿como debo hacerlo?
  #2 (permalink)  
Antiguo 11/03/2019, 16:47
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.404
Antigüedad: 13 años, 2 meses
Puntos: 774
Respuesta: Tomar datos de dos columnas y ordenar de mayor a menor

Pero vas a mostrar las 2 puntuaciones mas altas por cada jugador o como?

Podrias poner un ejemplo de tus datos y de cual es el resultado que esperas?
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 11/03/2019, 16:50
 
Fecha de Ingreso: noviembre-2005
Mensajes: 132
Antigüedad: 13 años, 11 meses
Puntos: 2
Respuesta: Tomar datos de dos columnas y ordenar de mayor a menor

Ejemplo tengo esta tabla

Jugador1 Jugador2 puntos1 puntos2
A B 50 51
C D 45 44
E F 30 80
G H 90 20
I J 55 15

Puntos mas altos
G 90
F 80
I 55
B 51
A 50
  #4 (permalink)  
Antiguo 11/03/2019, 17:00
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.404
Antigüedad: 13 años, 2 meses
Puntos: 774
Respuesta: Tomar datos de dos columnas y ordenar de mayor a menor

Código SQL:
Ver original
  1. SELECT * FROM(
  2. SELECT jugador1, MAX(puntos1) FROM tabla GROUP BY jugador1
  3. ) AS t1
  4. UNION
  5. SELECT * FROM(
  6. SELECT jugador2, MAX(puntos2) FROM tabla GROUP BY jugador2
  7. ) AS t2
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 11/03/2019, 17:03
 
Fecha de Ingreso: noviembre-2005
Mensajes: 132
Antigüedad: 13 años, 11 meses
Puntos: 2
Respuesta: Tomar datos de dos columnas y ordenar de mayor a menor

Cita:
Iniciado por Libras Ver Mensaje
Código SQL:
Ver original
  1. SELECT * FROM(
  2. SELECT jugador1, MAX(puntos1) FROM tabla GROUP BY jugador1
  3. ) AS t1
  4. UNION
  5. SELECT * FROM(
  6. SELECT jugador2, MAX(puntos2) FROM tabla GROUP BY jugador2
  7. ) AS t2
Eso solo me daria el valor más alto de cada columna y no es lo que busco.
  #6 (permalink)  
Antiguo 12/03/2019, 07:27
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.404
Antigüedad: 13 años, 2 meses
Puntos: 774
Respuesta: Tomar datos de dos columnas y ordenar de mayor a menor

Tienes razon no estaba bien el query prueba con algo como esto:

Código SQL:
Ver original
  1. CREATE TABLE #temp
  2. (
  3. jugador1 VARCHAR(10),
  4. jugador2 VARCHAR(10),
  5. puntos1 INT,
  6. puntos2 INT
  7. )
  8.  
  9. INSERT INTO #temp VALUES ('A', 'B', 50, 51)
  10. INSERT INTO #temp VALUES ('C', 'D', 45, 44)
  11. INSERT INTO #temp VALUES ('E', 'F', 30, 80)
  12. INSERT INTO #temp VALUES ('G', 'H', 90, 20)
  13. INSERT INTO #temp VALUES ('I', 'J', 55, 15)
  14.  
  15.  
  16. SELECT  jugador1, puntos1 FROM(
  17. SELECT * FROM(
  18. SELECT  jugador1,puntos1 FROM #temp
  19. ) AS t1
  20. UNION
  21. SELECT * FROM(
  22. SELECT  jugador2, puntos2 FROM  #temp
  23. ) AS t2
  24. ) AS completa ORDER BY puntos1 DESC

Resultado:
jugador1 puntos1
G 90
F 80
I 55
B 51
A 50
C 45
D 44
E 30
H 20
J 15

Ya nada mas tu agregale el top N de datos que quieres
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Última edición por Libras; 12/03/2019 a las 07:37

Etiquetas: 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 17:00.