Does anybody has a idea to optimization my follow query?
 

 

 SELECT
  ELEMENTE.BEZEICHNUNG,
  DATENLOGGING.DATUMZEIT,
  DATENLOGGING.WERT,
  DATENLOGGINGTYPEN.MASSEINHEIT,
  DATENLOGGINGTYPEN.DATA_TYPE,
  DATENLOGGINGTYPEN.FAKTOR
FROM
  DATENLOGGING
  INNER JOIN ELEMENTE
    ON DATENLOGGING.SPS_NODE = ELEMENTE.SPS_NODE AND DATENLOGGING.TYP =
    ELEMENTE.TYP AND DATENLOGGING.ELEMENT = ELEMENTE.ELEMENT AND
    DATENLOGGING.JOBID = ELEMENTE.JOBID
  INNER JOIN DATENLOGGINGTYPEN
    ON DATENLOGGING.SPS_NODE = DATENLOGGINGTYPEN.SPS_NODE AND
    DATENLOGGING.TYP = DATENLOGGINGTYPEN.TYP AND DATENLOGGING.ELEMENT =
    DATENLOGGINGTYPEN.ELEMENT AND DATENLOGGING.JOBID = DATENLOGGINGTYPEN.JOBID
WHERE
  (
  (DATENLOGGING.DATUMZEIT >= '11.01.2017 12:51:26') AND (DATENLOGGING.DATUMZEIT 
<= '11.01.2017 13:51:37') OR
  (DATENLOGGING.DATUMZEIT >= '11.01.2017 13:50:13') AND (DATENLOGGING.DATUMZEIT 
<= '11.01.2017 22:07:10') OR
  (DATENLOGGING.DATUMZEIT >= '11.01.2017 22:07:38') AND (DATENLOGGING.DATUMZEIT 
<= '12.01.2017 22:04:20') OR

 

 

 her between are about 200 Lines!!

 

 

   (DATENLOGGING.DATUMZEIT >= '12.09.2017 14:03:20') AND 
(DATENLOGGING.DATUMZEIT <= '12.09.2017 16:59:18') OR
  (DATENLOGGING.DATUMZEIT >= '14.09.2017 10:54:03') AND (DATENLOGGING.DATUMZEIT 
<= '14.09.2017 16:46:48') OR
  (DATENLOGGING.DATUMZEIT >= '15.09.2017 14:29:02') AND (DATENLOGGING.DATUMZEIT 
<= '15.09.2017 14:59:27') OR
  (DATENLOGGING.DATUMZEIT >= '18.09.2017 09:58:56') AND (DATENLOGGING.DATUMZEIT 
<= '18.09.2017 10:59:10') OR
  (DATENLOGGING.DATUMZEIT >= '18.09.2017 13:58:56') AND (DATENLOGGING.DATUMZEIT 
<= '18.09.2017 14:59:10')
  ) AND
  DATENLOGGING.SPS_NODE = 100 AND DATENLOGGING.TYP = 20 AND DATENLOGGING.JOBID =
  4 AND ((DATENLOGGING.ELEMENT = 32) OR (DATENLOGGING.ELEMENT = 38) OR
    (DATENLOGGING.ELEMENT = 20) OR (DATENLOGGING.ELEMENT = 35) OR
    (DATENLOGGING.ELEMENT = 41) OR (DATENLOGGING.ELEMENT = 23)) AND
  DATENLOGGING.WERT IS NOT NULL
ORDER BY
  ELEMENTE.BEZEICHNUNG,
  DATENLOGGING.DATUMZEIT


 

 The follow statement in the where clause 

   (DATENLOGGING.DATUMZEIT >= '12.09.2017 14:03:20') AND 
(DATENLOGGING.DATUMZEIT <= '12.09.2017 16:59:18') OR

 

 are a result of a separate query like the follow:
 SELECT

  bm.KOMMT,
  bm.GEHT
 FROM
  bm
 
WHERE
  bm.SPS_NODE=20 and bm.TYP=25 and bm.ELEMENT=1 and
   bm.KOMMT > '01.01.2017 00:00:00' and bm.KOMMT < '31.12.2017 23:59:59'
 

 Are there are a better solution to combine the two querys?
 

 May thanks for any hints

 

 Best Regards
 Gregor

 
  • [firebi... gregorkob...@yahoo.com [firebird-support]
    • OD... Karol Bieniaszewski liviusliv...@poczta.onet.pl [firebird-support]
      • ... blackfalconsoftw...@outlook.com [firebird-support]
        • ... Helen Borrie hele...@iinet.net.au [firebird-support]
          • ... blackfalconsoftw...@outlook.com [firebird-support]
            • ... Helen Borrie hele...@iinet.net.au [firebird-support]

Reply via email to