Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-07-2011
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 21
gluglu Va por buen camino
Gracias Casimiro, pero tampoco funciona ....

Está claro que normalmente el 'order by' de una unión de Select's, va al final del todo y ahí se han de utilizar números.

Pero por eso es lo que me lanza el error al intentar compilar el SP, y tener el primer Select con un order by. No tiene sentido para el compilador, aunque yo lo necesite así.

No tengo manera de hacerlo de otra manera. La primera consulta me devuelve varios registros y yo tengo que coger sólo el 1º de un orden determinado.

He optado, a espera de si alguien propone algo mejor, de hacer un nuevo SP que a su vez llame al otro, y ya hago todas las operaciones en el nuevo. De momento, aunque no he terminado, parece que así sí que funciona.

Gracias de nuevo a todos.
__________________
Piensa siempre en positivo !
Responder Con Cita
  #2  
Antiguo 07-07-2011
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
Cita:
Empezado por gluglu Ver Mensaje

.... el First 1 sí que funciona bien, pero no puedo hacer el Union ya que la primera consulta está ordenada !!

Me dá error si hago el union con 'order by' en la primera consulta.
Vaya, pues si que es un incordio.

Entonces puedes aplicar el SELECT FIRST 1 sobre una consulta ya ordenada. De esta forma el SELECT FIRST 1 no necesita estar ordenado.

Es decir :

Código SQL [-]
  SELECT FIRST 1 Campo1, Campo2
  FROM (SELECT Campo 1, Campo2 FROM Tabla1 ORDER BY Campo3)
UNION
  SELECT Campo4, Campo5
  FROM Tabla2
UNION
....

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).

Última edición por guillotmarc fecha: 07-07-2011 a las 20:38:30.
Responder Con Cita
  #3  
Antiguo 07-07-2011
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 21
gluglu Va por buen camino
Pues tienes toda la razón ! ... no se me había ocurrido esa opción.

La verdad es que ya tengo lista el nuevo SP con la llamada al SP 'hijo', tal y como comenté antes. Así me funciona. Pero aun así, voy a ver lo que me indicás mas tarde, porque al final y al cabo es más claro tener todo en un único SP.

La verdad es que se me complicó bastante. Al final para realizar el cálculo intermedio, entre dos registros con sus Timestamp's correspondientes, he tenido que recurrir a declarar un Cursor en el SP y utilizar Variables Auxiliares.

Gracias de nuevo
__________________
Piensa siempre en positivo !
Responder Con Cita
  #4  
Antiguo 29-07-2011
Avatar de PepeLolo
PepeLolo PepeLolo is offline
Miembro
 
Registrado: jun 2003
Ubicación: Fuenlabrada - Madrid - Espagna
Posts: 265
Poder: 21
PepeLolo Va por buen camino
Cita:
Empezado por gluglu Ver Mensaje
Pues tienes toda la razón ! ... no se me había ocurrido esa opción.

La verdad es que ya tengo lista el nuevo SP con la llamada al SP 'hijo', tal y como comenté antes. Así me funciona. Pero aun así, voy a ver lo que me indicás mas tarde, porque al final y al cabo es más claro tener todo en un único SP.

La verdad es que se me complicó bastante. Al final para realizar el cálculo intermedio, entre dos registros con sus Timestamp's correspondientes, he tenido que recurrir a declarar un Cursor en el SP y utilizar Variables Auxiliares.

Gracias de nuevo
El proceso es el correcto y te digo mas, has terminado por programar justo tal y como has planteado la pregunta.
__________________
PepeLolo
El hombre el único virus que mide más de unas cuantas micras
Responder Con Cita
Respuesta



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
Stored Procedure 2 Bases Firebird Joe_Balda Firebird e Interbase 2 06-06-2011 21:04:09
Incrementar Store Procedure Firebird sierraja Firebird e Interbase 5 16-11-2009 16:23:23
Ayuda con Stored Procedure Firebird Blackspike Firebird e Interbase 4 07-01-2008 18:18:39
Store procedure en firebird ronimaxh Firebird e Interbase 4 19-04-2006 11:42:12
commit dentro de un procedure de firebird cahosoft Firebird e Interbase 2 10-09-2005 04:02:03


La franja horaria es GMT +2. Ahora son las 05:15:49.


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