Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-03-2015
Avatar de jeremiselxi
jeremiselxi jeremiselxi is offline
Miembro
 
Registrado: ago 2008
Posts: 199
Poder: 16
jeremiselxi Va por buen camino
Wink ¿Es posible ordenar los registros de manera aleatoria?

Buenos días.

Esperando se encuentren bien indicaré primero cual es el problema.

Yo tengo una tabla llamada "Accesos_y_Clausuras" la cual es usada para llevar un registro de las actividades diarias del departamento de seguridad.

Entonces viene el problema, yo necesito generar una consulta agrupada por las actividades mediante la elección de las fechas desde y hasta, así como también en base a esto generar un gráfico.

Nota: estos dos ya lo tengo y con el código SQL siguiente obtengo mi resultado excelentemente.

Código SQL [-]
SELECT a.Actividad AS [ACTIVIDADES REALIZADAS], Count(b.Actividad) AS TOTALES
 FROM Accesos_y_Clausuras AS a, Accesos_y_Clausuras AS b 
 WHERE (((b.[No])=[a].[No])) and a.Fecha >= :fechadesde and a.Fecha <= :fechahasta  GROUP BY a.Actividad order BY a.Actividad

Ver imagen 1.png y 2.png.

¿Cuál es el problema?

Si se pueden dar cuenta dependiendo de la cantidad de veces que se repita la actividad, si son pocas las veces, ocasionará que en el gráfico se muestren juntas varios registros.

Adjunto la información del mes de enero del 2015 para una mejor aclaración.

Código:
Actividades Realizadas	                      Totales
Activación de Usuario	                     5
Asignación Caja-Usuario	                      1
Asociación de Usuario	                              5
Baja a Empleado	                              11
Bloqueo de Cuenta	                              4
Cambio de Perfil	              1
Creación de Grupo	                              1
Creación de Usuario	                              35
Reinicio de Password	                              39
Resolución de Incidencia	                      5
Restricción de Acceso	                              1
Solicitud de Acceso	                              29
Generación de Nómina - Eikon	              5
Generación de Nómina - Manual	              20
Total 	                                              162
Si se pueden dar cuenta como "Cambio de Perfil" y "Creación de Grupo" tienen un solo registro en el mes de enero el gráfico se genera con label muy pegado.

Entonces la solución que se me ocurre es, poder ordenar aquellas actividades que se repiten muy pocas veces en el medio de dos actividades que se repiten muchas veces para que así se muestre de una mejor manera el gráfico.

Nota: Para generarse el gráfico, toma de referencia los registros de la misma manera en que se muestran en el grid.

Espero haber sido bien explicito.

Gracias de antemano por su acostumbrada colaboración.

Saludos.
Imágenes Adjuntas
Tipo de Archivo: jpg 1.jpg (18,7 KB, 3 visitas)
Tipo de Archivo: jpg 2.jpg (17,4 KB, 3 visitas)
__________________
Cristo te ama, ven a d él, ya k te espera con los brazos abiertos. Dios te bendiga mucho
Responder Con Cita
  #2  
Antiguo 03-03-2015
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Se puede generar un SQL que devuelve registros aleatorios? Si, pero eso depende del motor. Por ejemplo es postgreSQL una forma poco optima es:

Código SQL [-]
SELECT * FROM table ORDER BY RANDOM()

Sin embargo, tu VERDADERO PROBLEMA es que estas tratando de resolver mal el asunto. Lo que quieres es tener una buena grafica. Deberias es pensar: Cual es la MEJOR forma de graficar los datos? En vez de: Cual es la forma de TORCER la información pa que se EMBUTA de forma tal que ESTA VEZ de lo que espero? Porque si eliges mal el tipo de grafico, no hay como queden los datos buenos.

Que los obtengas aletatorios solo empeora las cosas, ya que cada vez saldra de forma diferente la grafica!

El objetivo de una grafica es aclarar *algo*, y mas concretamente: ENFOCAR algo. Si tu grafica no es MAS clara que una tabla o listado, la grafica NO TIENE SENTIDO HACERLA.

---

REGLA #1:

JAMAS USES TORTA.

Siempre que parece que una torta es una opcion, hay otro tipo de grafica que lo hace mejor. SIEMPRE.

REGLA #1, Extra:

NO grafica en 3D

REGLA #2:

Ten claro que es lo que quieres resaltar o enfocar.

Estas comparando? Mirando una tendencia? Mostrando como algo es diferente de lo demas? Mostrando como es lo mismo?

Quieres ver cual es el producto mas vendido? Como van las cosas en el año? Como compara este mes con el anterior? Que es mas rapido, o lento?

Una persona cualquiera deberia poder sacar una conclusion razonable y especifica al ver la grafica (exceptuando las que son de tipo muy tecnico, como las radiales).

Una grafica: Una pregunta concreta que tiene una respuesta concreta. Una sola.

Es por eso que las graficas NO reemplazan las tablas. Para ver detalle, es mejor ver los datos tal cual.

---

En terminos generales: Usa graficas de lineas, barras & columnas: Esas resuelven el 90% de todo lo que quieres saber. Todos los demas tipos de graficas son *especializadas* (incluyendo la torta: Tiene un unico caso de uso valido. Y ese caso de uso se puede resolver con otro tipo de grafica!).

---
Los principios de Edwar Tufte te pueden servir. Encontre esta mini-explicacion:

https://optyestadistica.wordpress.co...a-en-graficos/

Resumen:

- Lineas, barras, columnas
- 2D
- Sin "basura-grafica" como 3d, sombras, demasiados colors, fondos coloreados, etc. Nada que distraiga
- Objetivo claro: Que es lo que responde la grafica
- Uso moderado de color. El color NO ES decorativo: Ej: Si quieres resaltar cual es el producto mas vendido, todas las columnas en gris y la mas vendida en color!.
- Las que vienen por defecto en Excel/Powerpoint son MAL EJEMPLO!
__________________
El malabarista.
Responder Con Cita
  #3  
Antiguo 03-03-2015
Avatar de jeremiselxi
jeremiselxi jeremiselxi is offline
Miembro
 
Registrado: ago 2008
Posts: 199
Poder: 16
jeremiselxi Va por buen camino
Wink

Solamente puedo decir.

Excelente hermano.

Muchas gracias por tomar de tu tiempo para explicarme todo esto.

Saluditos.
__________________
Cristo te ama, ven a d él, ya k te espera con los brazos abiertos. Dios te bendiga mucho

Última edición por Casimiro Notevi fecha: 03-03-2015 a las 20:17:32.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Ordenar form en el Proyect Manager......es posible? verito_83mdq OOP 6 11-01-2011 10:16:50
Ordenar registros de manera descendente con ClientDataSet alucardo Conexión con bases de datos 2 31-05-2006 19:27:34
La PC se Reseta sola y de manera aleatoria Enan0 Varios 5 25-04-2006 18:34:21
¿Es posible enlistar de esta manera en un grid? Nelly Varios 3 01-02-2006 04:09:56
Cual es la manera mas rapida para copiar registros ilichhernandez Conexión con bases de datos 2 02-11-2005 03:00:57


La franja horaria es GMT +2. Ahora son las 14:38:59.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi