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

Urge moda en registros de bd

Estas en el tema de Urge moda en registros de bd en el foro de Bases de Datos General en Foros del Web. Explico tengo que sacar la moda del numero de registros que hay en cada una de las tablas de la base de datos, supongamos que ...
  #1 (permalink)  
Antiguo 06/02/2010, 01:24
 
Fecha de Ingreso: enero-2010
Mensajes: 5
Antigüedad: 14 años, 9 meses
Puntos: 0
Urge moda en registros de bd

Explico tengo que sacar la moda del numero de registros que hay en cada una de las tablas de la base de datos, supongamos que existen 20 tablas de las cuales 5 tienen 2 registros 10 tienen 5 registros 3 tienen 4 registros y 2 2o registros, entonces necesito saber el 5 que es la moda para despues copiar cualquier tabla a otra estoy en php pero supongo que obteiendo el sql en cualquier lenguaje puede servir.
De antemano gracias
  #2 (permalink)  
Antiguo 06/02/2010, 02:38
Avatar de morior  
Fecha de Ingreso: agosto-2009
Ubicación: Barcelona
Mensajes: 437
Antigüedad: 15 años, 3 meses
Puntos: 12
Respuesta: Urge moda en registros de bd

No he entendido nada. ¿Qué es la moda?

Pero bueno si oparas con base de datos, que supongo que operas con mysql, el lenguaje para gestionar eso es php.
__________________
Juego de navegador online
  #3 (permalink)  
Antiguo 06/02/2010, 15:37
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Urge moda en registros de bd

Cita:
Iniciado por arturoroa Ver Mensaje
... supongamos que existen 20 tablas de las cuales 5 tienen 2 registros 10 tienen 5 registros 3 tienen 4 registros y 2 2o registros, entonces necesito saber el 5 que es la moda ...
No tiene nada que ver con HTML pero ...
Posiblemente ...

Creo que no es posible calcularlo en una sola consulta, pero dividiendo en 2 vistas y una consulta puedes lograrlo fácilmente. La primera vista cuenta los registros en las tablas, la segunda vista cuenta y agrupa las tablas que tienen la misma cantidad de registros y la última consulta extrae el valor con mayor frecuencia en la muestra (la moda),
Código SQL:
Ver original
  1. CREATE VIEW CuentaRegistrosTablas AS
  2.     SELECT COUNT(*) cuenta FROM tabla1 UNION
  3.     SELECT COUNT(*) cuenta FROM tabla2 UNION
  4.     SELECT COUNT(*) cuenta FROM tabla3;
  5.  
  6. CREATE VIEW CuentaSumaRegistros AS
  7.   SELECT cuenta, COUNT(cuenta) CuentaDeCuenta FROM
  8.   CuentaRegistrosTablas GROUP BY cuenta;
  9.  
  10. SELECT MAX(CuentaDeCuenta) FROM CuentaSumaRegistros;
  11. -- O posiblemente :
  12. SELECT MAX(cuenta) FROM CuentaSumaRegistros;
Dependiendo si quieres la moda de tablas o cantidad de registros. Porque el ejemplo que mostraste no está claro; 10 Tablas tiene 5 registros, pero en los dos casos es la moda.

Cita:
Iniciado por morior Ver Mensaje
¿Qué es la moda?
Estadística. Un cálculo estadístico.

Saludos,
  #4 (permalink)  
Antiguo 06/02/2010, 16:10
Avatar de webosiris
Moderador egiptólogo
 
Fecha de Ingreso: febrero-2002
Ubicación: Luxor, Egipto
Mensajes: 10.725
Antigüedad: 22 años, 9 meses
Puntos: 998
Respuesta: Urge moda en registros de bd

muevo a base de datos desde html. por favor publicar en los foros adecuados.
  #5 (permalink)  
Antiguo 06/02/2010, 16:37
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: Urge moda en registros de bd

Aaah. Estabas hablando de modal... Lo que pasa es que es más habitual leerlo como frecuencia modal o modal que como moda, y la forma en que explicabas el problema no lo hacía más claro.

El problema para responder esto en bases de datos es tu ejemplo:
Cita:
supongamos que existen 20 tablas de las cuales 5 tienen 2 registros 10 tienen 5 registros 3 tienen 4 registros y 2 2o registros, entonces necesito saber el 5 que es la moda
Yo a eso no le veo sentido, porque en el contexto de las bases de datos, las tablas son entidades distintas, representan objetos y relaciones distintos y son básicamente incompatibles.
Para darte un ejemplo, es como si me dijeras que de esta lista:
Cita:
- 2 perros
- 2 vestidos
- 3 latas
- 3 calles
- 5 árboles
- 2 empleados
- 3 pasillos
- 4 jefes de sección
que el 2 es el modal.
Genial, pero no significa nada a nuestro entender, porque son entidades completamente diferentes, y la consulta entonces no se hace sobre los datos que hay en ellos, sino por los datos de la estructura de la base.

Diferente sería si quisieras saber , de una multinacional, cual es el modal de ingenieros en las diferentes secciones de toda la empresa.
Eso si tiene sentido, y se puede crear una consulta para obtenerlo.

¿Puedes darnos una idea de qué es lo que quieres obtener de la base, partiendo de la premisa que debe ser una información que tenga sentido en cuanto al modelo de datos de la base?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 06/02/2010, 22:57
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Urge moda en registros de bd

Hola,

Es evidente, quiere saber que tablas tienen mas datos para darles algun tipo de mantenimiento. Es muy común cuando quieres descargar algún histórico pero no sabes cual sería el mas aconsejable.

Acabo de realizar un procedimiento parecido para saber cuales tablas tienen los registros más antiguos (entre 220 tablas) y tomar un decisión administrativa de cuales son los mas aconsejables para eliminar, previamente haciendo un backup, por supuesto que no lo iba a realizar a mano.

Eso agiliza una aplicación que hicieron un grupo de ***** que no tenian la mas minima idea de programación y barren la tabla cada vez que abren un formulario. Dos opciones, hacer la búsqueda en la tabla y eliminar datos o rediseñar la aplicación por un programador capaz, optaron por la primera

Saludos,

ps:
En algunos lugares es mas común 'moda' que 'modal'.
  #7 (permalink)  
Antiguo 07/02/2010, 08:31
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: Urge moda en registros de bd

Para ello básicamente necesita acceder a la información de INFORMATION_SCHEMA.TABLES, que es donde se guarda toda esa información. Para la información más antigua, deberán acceder a las tablas correspondientes.

Cita:
En algunos lugares es mas común 'moda' que 'modal'.
Aclaración innecesaria. Depende de los países, y los usos y costumbres del lenguaje local (inclusive a nivel académico), por lo que mi observación era disculpable.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #8 (permalink)  
Antiguo 07/02/2010, 11:10
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Urge moda en registros de bd

Hola,

Bueno, habrá que esperar para saber si arturoroa logró resolver esto,

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Para ello básicamente necesita acceder a la información de INFORMATION_SCHEMA.TABLES, que es donde se guarda toda esa información. ...
Ok, esa era la respuesta adecuada.

Ya no entro en mas detalles porque yo no hice la pregunta. (La segunda parte era específicamente de un problema que tuve que solventar personalmente y fue sobre SQL Server, así que use sysobjects, etc., esperaba una respuesta de arturoroa para entrar en mas detalles.)

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Aclaración innecesaria. Depende de los países, ...
Exactamente, depende de los paises y forosdelweb.com es un sitio internacional, pero no te estaba corrigiendo, solamente haciendo un comentario. (Por ejemplo, acá le llamamos computadora y en otros lugares ordenador, si uso la palabra ordenador muchas personas aquí posiblemente no me entiendan).

Saludos.

Etiquetas: moda, mysql, php, 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 11:59.