Aquí hay algunos datos de ejemplo en una tabla de MySQL¿Cómo selecciono un número fijo de filas para cada grupo?
a b distance
15 44 250
94 31 250
30 41 250
6 1 250
95 18 250
72 84 500
14 23 500
55 24 500
95 8 500
59 25 500
40 73 500
65 85 500
32 50 500
31 39 500
22 25 500
37 11 750
98 39 750
15 57 750
9 22 750
14 44 750
69 22 750
62 50 750
89 35 750
67 65 750
74 37 750
52 36 750
66 53 750
82 74 1000
79 22 1000
98 41 1000
¿Cómo puedo consultar esta tabla de tal manera que llegue 2 filas por distancia seleccionada al azar?
Una consulta exitosa va a producir algo así como
a b distance
30 41 250
95 18 250
59 25 500
65 85 500
15 57 750
89 35 750
79 22 1000
98 41 1000
+1 ¡Pásame! – Seb
A menudo es una educación que lee sus respuestas. ¿Cómo se seleccionan las filas al azar? – mdma
@mdma: las filas se clasifican de forma aleatoria porque solo están ordenadas por el valor de la distancia; cualquier par de valores a & b se puede clasificar como 1, etc. El 'ORDER BY t.distance' es solo para mantener agrupados los valores de distancia. , por lo que la instrucción CASE restablece correctamente el valor de rownum para comenzar en 1 cuando se encuentra un nuevo valor de distancia. –