Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
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 19-10-2018
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por Angel.Matilla Ver Mensaje
(haceros una idea porque no encuentro la forma de encolumnarlos bien )
Mira a ver si así es como querías:

Código:
GRUPO1   GRUPO2   DATO1   DATO2
  93       2       284     6498
  95       2        38      456
  99       2        90     2185
  99       4         1       10

Código:
GRUPO1  GRUPO2  DATO1  DATO2  ... GRUPOx  DATO1x  DATO2x
  93      2      284   6498
  95      2       38    456
  99      2       90   2185   ...   4        1       10
Para que quedenn bien alineadas las columnas, escribe todo en un editor de texto y luego encuádralo en etiquetas [code].

// Saludos
Responder Con Cita
  #2  
Antiguo 19-10-2018
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.440
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Veo que Román se ha adelantado... o no...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 19-10-2018
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Ubicación: Toledo - España
Posts: 1.418
Poder: 21
Angel.Matilla Va por buen camino
Vale... ¡Gracias a los dos! Pero lo de la presentación es el menor de los problemas.
Responder Con Cita
  #4  
Antiguo 19-10-2018
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Ubicación: Toledo - España
Posts: 1.418
Poder: 21
Angel.Matilla Va por buen camino
He estado dando vueltas por todos lados (es una forma de hablar ) y he encontrado varias respuestas que apuntan en la dirección que quiero ir; casi todas ellas hablan de las CTE. Encontré una sugerencia de fjcg02 que la verdad sea dicha me ha gustado (con un procedimiento) pero tengo que estudiarla a fondo. Antes de implementar nada nuevo he estado probando otra sugerencias que vienen en ese hilo, pero la que más parece aproximarse a mi problema o no estoy desarrollándola bien o no acabo de entenderla.


La tabla tiene, entre otros muchos, estas dos filas:


Estoy usando este código:
Código SQL [-]
WITH Pivote AS (SELECT DISTINCT Estadistica, Grupo1, Grupo2, Grupo3, Dato1 FROM Estadistica)
SELECT A.Grupo1, A.Grupo2, B.Grupo3, B.Dato1, C.Grupo3, C.Dato1
  FROM Estadistica A
  LEFT JOIN Pivote B ON A.Estadistica = B.Estadistica AND A.Grupo1 = B.Grupo1 AND A.Grupo2 = B.Grupo2 AND B.Grupo3 = 3
  LEFT JOIN Pivote C ON A.Estadistica = C.Estadistica AND A.Grupo1 = C.Grupo1 AND A.Grupo2 = C.Grupo2 AND C.Grupo3 = 4
 WHERE SUBSTRING(A.Estadistica FROM 1 FOR 1) = :Estadistica 
  ORDER BY 1, 2
Todos los campos de la tabla son del tipo INTEGER. Al ejecutar esa consulta, entre otras muchas filas, me devuelve esto:


Me devuelve dos filas iguales, y lo hace siempre que para un valor único de la combinación Grupo1-Grupo2 hay más de un posible valor en Grupo3 y es evidente que lo que yo busco es que me devuelva una única fila. ¿alguna sugerencia?

Última edición por Casimiro Noteví fecha: 19-10-2018 a las 20:01:57. Razón: Etiquetas sql
Responder Con Cita
  #5  
Antiguo 19-10-2018
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.941
Poder: 27
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Aqui le pegaste a una de las diferentes limitaciones de SQL. Es pesimo para generar columnas dinamicamente.

Hay una posibilidad y es utilizar LIST:

http://www.developeando.com/2009/02/...-function.html
__________________
El malabarista.
Responder Con Cita
  #6  
Antiguo 20-10-2018
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.671
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por mamcx Ver Mensaje
Aqui le pegaste a una de las diferentes limitaciones de SQL. Es pesimo para generar columnas dinamicamente.
Hay una posibilidad y es utilizar LIST:
http://www.developeando.com/2009/02/...-function.html
Acostumbro a dar un repaso a las cosas nuevas de cada versión y nunca había visto esa función
Responder Con Cita
  #7  
Antiguo 20-10-2018
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Ubicación: Toledo - España
Posts: 1.418
Poder: 21
Angel.Matilla Va por buen camino
Yo tampoco la conocía. Probaré a ver si me vale, pero no lo tengo muy claro porque por lo que veo genera una lista y me hacen falta columnas separadas para poder generar un informe (que no sé si lo había dicho). No obstante es una función muy interesante. Gracias.
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
Consulta dinamica CoCaInE Varios 4 31-07-2012 21:32:07
problemas con consulta dinamica oktubre Conexión con bases de datos 3 16-04-2011 23:52:18
Consulta de SQL Dinamica pmpisani Tablas planas 1 04-10-2007 17:05:57
Grilla dinamica walito Gráficos 1 09-06-2007 12:16:35
Consulta dinámica en procedimiento almacenado Ivanzinho Firebird e Interbase 2 24-10-2005 15:26:27


La franja horaria es GMT +2. Ahora son las 21:10:34.


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