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

[SOLUCIONADO] poner valor de columnas como listado

Estas en el tema de poner valor de columnas como listado en el foro de Mysql en Foros del Web. hola que tal , me gustaria saber si hay alguna forma de hacer una consulta que me muestre mistados de la siguinete manera: Modo tradicional ...
  #1 (permalink)  
Antiguo 23/11/2010, 13:27
 
Fecha de Ingreso: noviembre-2010
Ubicación: en las nubes
Mensajes: 56
Antigüedad: 13 años, 5 meses
Puntos: 3
Pregunta poner valor de columnas como listado

hola que tal , me gustaria saber si hay alguna forma de hacer una consulta que me muestre mistados de la siguinete manera:

Modo tradicional

campoA|campoB|campoB

---------+---------+-------------
valor1 |valor2 |valor2 |

modo deseado

fields |
---------+
valor1 |
valor2 |
valor2 |

nota: ya lo hice en php y java , solo quiero saber si sepuede hacer esto en el servidor de mysql
  #2 (permalink)  
Antiguo 23/11/2010, 13:36
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: poner valor de columnas como listado

Buenas tardes Hufex, tal vez no ser la forma más óptima, pero puedes hacerlo así:

Código MySQL:
Ver original
  1. SELECT CampoA as Fields_X FROM TuTabla
  2. SELECT CampoB as Fields_X FROM TuTabla
  3. SELECT CampoB as Fields_X FROM TuTabla
No se si el repetir el campoB y el valor2 sea como lo necesitas o fue un error al escribir. Tal vez alguien tiene una forma más óptima para hacer esto pero si encuentro algo lo comento después.

Nota: el poner Fields_X como alias se debe a que si no mal recuerdo FIELDS es una palabra reservada de MySQL. Es cuestión de probar

Saludos
Leo.
  #3 (permalink)  
Antiguo 23/11/2010, 13:45
 
Fecha de Ingreso: noviembre-2010
Ubicación: en las nubes
Mensajes: 56
Antigüedad: 13 años, 5 meses
Puntos: 3
Respuesta: poner valor de columnas como listado

bueno gracias , por la respuesta , ya lo habia pensado , pero solo hay una problema
mi tabla real tiene 27 campos , por desgracias todos necesarios , la tengo en 3 nivel de normalizacion :S , y lo que quiero hacer ver cuales campos estan en null o vacios ,

cabe mencionar que por la camtidad de datos solicitados , se requieren nulos y para despues capturarlos ,

mi idea es esta , porcada campo diferente de nulo aumento en uno un contador , de pues coneste octengo el porcentaje de captura

contador*=100/27

es algo loco , y nose si sepuede hacer en SQL o me quedo con la programacion de mi metodo para esto

gracias de todos modos
  #4 (permalink)  
Antiguo 23/11/2010, 16:36
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: poner valor de columnas como listado

Hola de nuevo Hufex, a ver si entendí más o menos lo que quieres.

supongamos que tu tabla tiene más o menos los siguientes datos

Código:
Campo1|Campo2|Campo3|
----------------------------------
uno|null|tres
null|null|tres
uno|dos|tres
uno|dos|null
es decir, de tus 12 campos posibles tienes información en 8 de ellos o lo que es lo mismo un 66.66% de captura es correcto???

Esto lo podrías obtener así

Código MySQL:
Ver original
  1. sum(case when Campo3 is not null then 1 else 0 end) as total_no_nulos,
  2. sum(1) * 3 as total_registros,
  3. (
  4. ) / (sum(1) * 3) as porcentaje_captura
  5. from TuTabla
Esto te regresaría algo como esto:

Código:
Total_no_nulos|total_registros|porcentaje_captura
---------------------------------------------------------------------
8|12|0.6667
Obviamente habría que considerar los 27 campos... igual sería cuestión de verificar qué es más rápido, si hacerlo desde MySQL o con programación JAVA y PHP

Saludos
Leo.

Etiquetas: Ninguno
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 17:26.