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 24-10-2008
Avatar de boreg
boreg boreg is offline
Miembro
 
Registrado: oct 2007
Ubicación: México, México
Posts: 76
Poder: 17
boreg Va por buen camino
Cita:
Empezado por Angel Fernández Ver Mensaje
...Para elaborar el gráfico me iría bien saber qué sensores no tienen ningún dato en el rango de fechas de la consulta....
Quizás para ese resultado te vendría bien una consulta con EXISTS:

Código SQL [-]
Select *
from CatSensores CS
where not exists(
select *
from tablasensores TS
where TS.IDSENSOR = CS.IDSENSOR
and fecha between fecha1 and fecha2)

tambien opino que podrías utilizar una tabla "temporal" para vaciar los resultados de tu primer consulta y trabajar con esos datos.

Espero que en algo te sea de ayuda. Saludos
Responder Con Cita
  #2  
Antiguo 25-10-2008
Angel Fernández Angel Fernández is offline
Miembro
 
Registrado: may 2004
Ubicación: Valencia - España
Posts: 141
Poder: 20
Angel Fernández Va por buen camino
Gracias boreg por tu ayuda.

Sin embargo, el problema es que lanzar una segunda consulta haría lento el proceso (la primera consulta tarda entre 1 y 2 minutos).

Y lo de la tabla temporal tendría que recorrer todos los datos y también sería lento (en ocasiones, la consulta me devuelve varias decenas de miles de resultados).

En realidad lo de la tabla temporal es algo que me llama la atención desde hace tiempo pero que no llego a utilizar bien del todo. A veces he usado la memorytable de las rxlib pero es muy lento porque hay que recorrer todos los datos de la consulta, no acepta un dataset como origen de datos.
¿Hay algún componente de tabla temporal que recoga los resultados de un dataset?

Un saludo.
Responder Con Cita
  #3  
Antiguo 03-11-2008
Avatar de rastafarey
rastafarey rastafarey is offline
Miembro
 
Registrado: nov 2003
Posts: 927
Poder: 21
rastafarey Va por buen camino
Resp

Código SQL [-]
select first 1 fecha, hora, dato
from tablasensores
where fecha between fecha1 and fecha2 and sensor = 1
union
select first 1 fecha, hora, dato
from tablasensores
where fecha between fecha1 and fecha2 and sensor = 2
union
select first 1 fecha, hora, dato
from tablasensores
where fecha between fecha1 and fecha2 and sensor = 3

Pruba con algo asi. Y sando case o luego lansas la consulta sobre esta misma conculta o usando with.

No tomen esta consulta a ala ligera hay varias consultas. pero se esta usando first 1 Aqui hay muchos beneficios.
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa.
Responder Con Cita
  #4  
Antiguo 06-11-2008
Angel Fernández Angel Fernández is offline
Miembro
 
Registrado: may 2004
Ubicación: Valencia - España
Posts: 141
Poder: 20
Angel Fernández Va por buen camino
Gracias rastafarey.

Tu código tiene buena pinta. Ya lo pruebo a ver qué tal.

Un saludo.
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
como saber numero de registros de una tabla usando un clientdataset? acl_gandalf Conexión con bases de datos 11 26-06-2023 19:09:19
Saber el número de registros llenos en un campo mmmbopzombie Tablas planas 2 28-11-2005 09:54:31
Query, como saber el numero de Registros ? Pascual Montes Conexión con bases de datos 5 09-12-2004 17:14:17
Saber cuantos registros origino la consulta JorgeBec SQL 1 12-11-2004 16:48:17
Saber el numero de registros consultados estudiante SQL 2 13-05-2003 00:12:09


La franja horaria es GMT +2. Ahora son las 05:14:17.


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