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

criterio de ordenado con ORDER BY de valores identicos

Estas en el tema de criterio de ordenado con ORDER BY de valores identicos en el foro de Mysql en Foros del Web. Hola a todos. Quisiera saber que criterio sigue MySQL para ordenar registros segun la clausula ORDER BY cuando 2 ó mas de esos registros almacenan ...
  #1 (permalink)  
Antiguo 16/04/2013, 17:55
 
Fecha de Ingreso: junio-2010
Mensajes: 373
Antigüedad: 14 años, 4 meses
Puntos: 11
criterio de ordenado con ORDER BY de valores identicos

Hola a todos.

Quisiera saber que criterio sigue MySQL para ordenar registros segun la clausula ORDER BY cuando 2 ó mas de esos registros almacenan el mismo valor.

Ejemplo por si no me he explicado muy bien:

nombre-----edad

juan --------21
fran --------22
jose ------- 22
luis --------22
marcos------23

Si hacemos una consulta:

Código MySQL:
Ver original
  1. SELECT nombre, edad FROM tabla ORDER BY edad DESC

MySQL debe utilizar un criterio concreto para ordenar de una u otra manera esos 3 nombres con la misma edad....pero no se cual es..
  #2 (permalink)  
Antiguo 16/04/2013, 20:09
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: criterio de ordenado con ORDER BY de valores identicos

Cita:
pero no se cual es..
¿No te resulta obvio?
Cita:
1) Fran
2) José
3) Luis
O sea:
Cita:
abcde - F - ghi - J - k - L - mnñopqrstuvwxyz
En definitiva: Usa las restantes columnas, ordenándolas de izquierda a derecha (si hubiese otras columnas semejantes lo notarías), en base al tipo de dato que tienen.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 17/04/2013, 00:55
 
Fecha de Ingreso: junio-2010
Mensajes: 373
Antigüedad: 14 años, 4 meses
Puntos: 11
Respuesta: criterio de ordenado con ORDER BY de valores identicos

Hola gnzsoloyo. Muchas gracias por tomarte interés.

Da la casualidad de que justo el ejemplo que puse se correspondía con ese orden que marcas, pero haciendo una busqueda real no me sucede así. He probado a hacer busquedas metiendo el ID (autoincrement) y también con el nombre, y de ninguna de las dos maneras me ha hecho un orden lógico por el número o alfabético. Te lo aseguro.

Por si acaso estoy pasando algo "obvio" por alto, las consultas son del estilo:

Código MySQL:
Ver original
  1. SELECT usuarios.nombre, datosreg.edad FROM usuarios INNER JOIN datosreg USING (ID) ORDER BY edad DESC
  2.  
  3. SELECT usuarios.ID, usuarios.nombre, datosreg.edad FROM usuarios INNER JOIN datosreg USING (ID) ORDER BY edad DESC

Y un extracto de la consulta:

ID nombre edad

23 Marc 24
44 Santi 23
204 Dani 22
203 Fran 22
202 Gonzalo 22
201 Gabriel 22
200 Gaspar 22
199 Irene 22
198 Andres 22
205 Dani 22
206 David 22
207 Damian 22
208 Gema 22
209 Hector 22
210 German 22
211 Nacho 22
212 Jose 22
213 Juan 22
197 Andres 22
196 Alex 22
195 Adriana 22
179 Diana 22
180 Oscar 22
181 Olimpia 22
182 Olga 22
183 Octavio 22

Etiquetas: ordenado, order, registros, select, sql, tabla
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 11:51.