Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-04-2015
tiqui_loquito tiqui_loquito is offline
Miembro
 
Registrado: oct 2013
Posts: 56
Poder: 11
tiqui_loquito Va por buen camino
Como hacer la siguiente consulta

Hola a todos

Les voy a contar lo que hace la consulta:

Por ejemplo, tengo en en una base de datos en el campo FECHA_PROBABLE_PARTO los siguientes datos
ID_NORMA_4505 FECHA_PROBABLE_PARTO
1 01/01/1800
2 01/01/1800
3 01/01/1845
4 01/01/1800
5 01/01/2015
6 01/01/1800
7 01/01/1845

En la tabla se guardan los siguientes tres valores: 01/01/1800, 01/01/1845 o la fecha en que se haya hecho una consulta de parto

La consulta siguiente me traería el valor 01/01/1845 que corresponde al ID_NORMA_4505 = 7

Código SQL [-]
      FPP=NULL;
      SELECT FIRST(1) TBL_NORMA_4505.FECHA_PROBABLE_PARTO
      FROM TBL_NORMA_4505
      WHERE TBL_NORMA_4505.FECHA_PROBABLE_PARTO <> '1800-01-01'
      AND TBL_NORMA_4505.FECHA_REGISTRO>=:FECHA_INICIAL AND TBL_NORMA_4505.FECHA_REGISTRO<=:FECHA_FINAL
      AND TBL_NORMA_4505.ID_PACIENTE=:ID_PACIENTE
      ORDER BY TBL_NORMA_4505.ID_NORMA_4505 DESC
      INTO
      :FPP;
      IF ((FPP IS NULL)) THEN FPP = '1845-01-01';

Hasta ahí todo bien. Pero me han solicitado lo siguiente condición en el where

Código SQL [-]
     SELECT FIRST(1) TBL_NORMA_4505.FECHA_PROBABLE_PARTO
      FROM TBL_NORMA_4505
     -- WHERE TBL_NORMA_4505.FECHA_PROBABLE_PARTO <> '1800-01-01' 

/*Debo reemplazar el where por las siguienets tres condiciones, en el orden en que estan */

WHERE FECHA_PROBABLE_PARTO <> de 01/01/1800 y <> de 01/01/1845 /*Si no hay datos pase la otra condición*/
WHERE FECHA_PROBABLE_PARTO  <> de 01/01/1800  /*Si no hay datos pase la otra condición*/ 
WHERE FECHA_PROBABLE_PARTO  <>  01/01/1800 


      AND TBL_NORMA_4505.FECHA_REGISTRO>=:FECHA_INICIAL AND TBL_NORMA_4505.FECHA_REGISTRO<=:FECHA_FINAL
      AND TBL_NORMA_4505.ID_PACIENTE=:ID_PACIENTE
      ORDER BY TBL_NORMA_4505.ID_NORMA_4505 DESC
      INTO
      :FPP;
      IF ((FPP IS NULL)) THEN FPP = '1845-01-01';


Hay alguna forma de hacerlo?

La verdad no se como hacerlo, se los agradecería mucho
Responder Con Cita
 



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
Como hacer consultas de registro anterior y siguiente Jorge Orozco Varios 12 16-10-2013 00:34:13
ayuda con la siguiente consulta microbiano SQL 9 14-04-2010 17:45:10
Como Hacer La Siguiente Consulta... rgstuamigo MySQL 2 11-09-2008 22:19:33
¿como puedo hacer lo siguiente? Jorge Alonzo Varios 2 19-10-2007 20:44:27
Necesito hacer lo siguiente dtomeysoto La Taberna 1 25-05-2006 16:21:25


La franja horaria es GMT +2. Ahora son las 08:51:16.


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