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

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 24-09-2005
lbuelvas lbuelvas is offline
Miembro
 
Registrado: may 2003
Ubicación: Colombia
Posts: 378
Poder: 24
lbuelvas Va por buen camino
Hola campeon, la unica es con un procedimiento almacenado, no entiendo cual es el proposito de tu necesidad pero me tome la tarea de hacer un segmento de codigo para resolverlo. Tendras una dificultad y es que si las longitudes de los nombres en una fecha es mas larga que el campo "nombres" te saldra un error al ejecutarse el procedimiento. No he probado si a la salida pueda haber un campo blob. Alguien puede decirnos si es posible ?.

Código SQL [-]

CREATE TABLE PERSONA (
  ID     INTEGER NOT NULL,
  NOMBRE VARCHAR(20) NOT NULL,
  FECHA  DATE NOT NULL
);

ALTER TABLE PERSONA ADD CONSTRAINT
PK_PERSONA
PRIMARY KEY (ID);

ALTER PROCEDURE SP_CUMPLEANEROS
RETURNS (
  FECHA_REFERENCIA DATE,
  NOMBRES VARCHAR(1024)
)
AS
  DECLARE VARIABLE NOMBRE_PERSONA VARCHAR(20);
BEGIN
  for select distinct fecha
      from persona
      order by fecha
      into :fecha_referencia
  do begin
    nombres = '';
    for select nombre
        from persona
        where fecha = :fecha_referencia
        order by id
        into :nombre_persona
    do begin
      if (nombres <> '') then
        nombres = nombres || ', ';
      nombres = nombres || nombre_persona;
    end
    suspend;
  end
END;
__________________
Luis Fernando Buelvas T.
Responder Con Cita
 


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


La franja horaria es GMT +2. Ahora son las 21:04:17.


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