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

[SOLUCIONADO] Conteo de registros

Estas en el tema de Conteo de registros en el foro de Mysql en Foros del Web. Buenas Quisiera exponer el siguiente caso ya que no tengo ni ideo como resolverlo: Tengo una tabla con la siguiente estructura: codigo-------pregunta1----pregunta2-----pregunta3------pregunta4---pregunta5 10 e b ...
  #1 (permalink)  
Antiguo 01/09/2012, 01:01
Avatar de castillo_depaz  
Fecha de Ingreso: abril-2012
Mensajes: 11
Antigüedad: 12 años, 1 mes
Puntos: 0
Pregunta Conteo de registros

Buenas
Quisiera exponer el siguiente caso ya que no tengo ni ideo como resolverlo:
Tengo una tabla con la siguiente estructura:
codigo-------pregunta1----pregunta2-----pregunta3------pregunta4---pregunta5
10 e b e e b
20 b b e e e
10 e b e b e


y tengo que obtener un resultado como el siguiente

Resultados:
Codigo 10:
Pregunta1 e ==>2
Pregunta2 b ==>3
Pregunta3 e ==>3
etc...
Codigo 20
Pregunta1 b ==>1
Pregunta2 b ==>1
Pregunta3 e ==>1
etc...


Y no se como hacerlo,
cualquier sugerencia sera bien recibida

gracias:
  #2 (permalink)  
Antiguo 01/09/2012, 06:05
Avatar de antoniopol  
Fecha de Ingreso: agosto-2012
Ubicación: Valladolid
Mensajes: 114
Antigüedad: 11 años, 8 meses
Puntos: 21
Respuesta: Conteo de registros

No entiendo de donde sale los datos de ==>1, si dijeras de dónde sale ese número. Y otra cosa simplemente es a partir de una consulta o quieres hacerlo en un lenguaje como PHP??
__________________
>> Blog de desarrollo web.
>> @antoniopol06 amante de la Web =D
  #3 (permalink)  
Antiguo 01/09/2012, 08:35
Avatar de castillo_depaz  
Fecha de Ingreso: abril-2012
Mensajes: 11
Antigüedad: 12 años, 1 mes
Puntos: 0
Pregunta Respuesta: Conteo de registros

Muchas gracias por responder;

pues el uno y lo demas numeros que siguen a las flechas es de contar cuantas veces aparece la letra que esta antes de la flecha por ejemplo si en la pregunta1 existen tres letras "e" entonces el codigo 10 debera tener tres en la letra y asi sucesivaente por cada pregunta y cada codigo.

espero que me de a entender y por el lenguaje si puede ser desde php y sql pues asi es como lo quiero hacer.


Gracias de nuevo
  #4 (permalink)  
Antiguo 01/09/2012, 09:35
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Conteo de registros

Pues, en ese contexto, desde el MySQL no puedes hacerlo porque estás contando lo que aparece en cada campo del mismo registro, y las operaciones de COUNT(), por ejemplo, se hacen entre registros...
Lo que quieres hacer se hace luego de obtenida la tabla, por programación, y programación es off-topic en este foro. No se trata ese tema acá.
El foro de PHP es: http://www.forosdelweb.com/f18/
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 01/09/2012, 14:41
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Conteo de registros

Creo que has dado datos erróneos, porque los primeros, los referidos al codigo 10 no están agrupados por código, mientras que los del codigo 20 sí.
Opino también que quizás la mejor solución es con programación, sobre todo si las preguntas tienen más de dos posibles respuestas. Además, yo me replantearía la estructura de la base, aunque si ya está hecha, te propongo estas consultas...
En cualquier caso estas consultas podrían ayudarte a entender la lógica:
si quieres datos separados por códigos:
SELECT codigo, SUM( IF( pregunta1 = 'e', 1, 0 ) ) Pregunta1e, SUM( IF( pregunta1 = 'b', 1, 0 ) ) Pregunta1b, SUM( IF( pregunta2 = 'e', 1, 0 ) ) Pregunta2e, SUM( IF( pregunta2 = 'b', 1, 0 ) ) Pregunta2b, SUM( IF( pregunta3 = 'e', 1, 0 ) ) Pregunta3e, SUM( IF( pregunta3 = 'b', 1, 0 ) ) Pregunta3b, SUM( IF( pregunta4 = 'e', 1, 0 ) ) Pregunta4e, SUM( IF( pregunta4 = 'b', 1, 0 ) ) Pregunta4b, SUM( IF( pregunta5 = 'e', 1, 0 ) ) Pregunta5e, SUM( IF( pregunta5 = 'b', 1, 0 ) ) Pregunta5b
FROM mitabla
GROUP BY codigo

Si son datos generales sin importar el código
SELECT SUM( IF( pregunta1 = 'e', 1, 0 ) ) Pregunta1e, SUM( IF( pregunta1 = 'b', 1, 0 ) ) Pregunta1b, SUM( IF( pregunta2 = 'e', 1, 0 ) ) Pregunta2e, SUM( IF( pregunta2 = 'b', 1, 0 ) ) Pregunta2b, SUM( IF( pregunta3 = 'e', 1, 0 ) ) Pregunta3e, SUM( IF( pregunta3 = 'b', 1, 0 ) ) Pregunta3b, SUM( IF( pregunta4 = 'e', 1, 0 ) ) Pregunta4e, SUM( IF( pregunta4 = 'b', 1, 0 ) ) Pregunta4b, SUM( IF( pregunta5 = 'e', 1, 0 ) ) Pregunta5e, SUM( IF( pregunta5 = 'b', 1, 0 ) ) Pregunta5b
FROM mitabla

Última edición por jurena; 01/09/2012 a las 15:14
  #6 (permalink)  
Antiguo 02/09/2012, 08:19
Avatar de castillo_depaz  
Fecha de Ingreso: abril-2012
Mensajes: 11
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Conteo de registros

Gracias Jurena
Lo voy a hacer y espero que me de resultado.

Etiquetas: conteo, registros, 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 10:52.