Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Brauche Hilfe bei einer vermutlich total verrückten Abfrage

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von Cracymike, 15 Dezember 2014.

  1. Cracymike

    Cracymike Benutzer

    Hallo zusammen,

    Senario:

    Hab eine Tabelle, diese enthält 3 Felder/Spalten :
    1. Timestamp
    2. ein nicht näher definierter Wert
    3. eine Numerische ID mit bis zu 4 Stellen die sowohl einen Sensor als auch dessen Standort exakt identifiziert .

    Was ich möchte:

    Ich benötige eine Abfrage die wie folgt aussieht:

    Ich habe einen Sensor von diesem möchte ich in einem definierten Zeitraum (Timestamp) von bis immer dann den Wert wissen wenn bei einen von 3 anderen Sensoren ein identischer Timstamp existiert.

    Eventell noch das praktische Beispiel dazu:

    Sensor 1 ist eine Pumpe diese Pumpe läuft in Intervallen und pro Sekunde wird ein Wert in die DB geschrieben. Jetzt habe ich zwei Behälter in die die Pumpe pumpt allerdings ist nicht klar wann sie in welchen Behälter pumpt. Um das jetzt festzustellen gibt es in Behälter 1 Düsen deren anliegenden Druck ich messen kann auch dieser wird sekündlich in die DB geschrieben. Ich muss also wissen ob in der Sekunde X an einer der drei Düsen ein druck angelegen hat.

    Eventuell etwas kompliziert Bei Fragen einfach nochmal nachfragen.

    Mit freundlichen Grüßen

    Mike
     
  2. akretschmer

    akretschmer Datenbank-Guru

    WHERE

    auch WHERE

    identische Timestamps zählen.

    Wenn ich Dich richtig verstanden habe. Beispieldaten wären ja sinnvoll, ...
     
  3. Distrilec

    Distrilec Datenbank-Guru

    Beispieldaten ? Ich dachte was so in der DB abläuft wäre Magie ?! :D
     
  4. ukulele

    ukulele Datenbank-Guru

    ~
    Code:
    SELECT    t0.*
    FROM    tabelle t0
    WHERE    t0.ID = ID_des_gesuchten_sensors
    AND        t0.timestamp BETWEEN von AND bis
    AND (    EXISTS (    SELECT    1
                        FROM    tabelle t1
                        WHERE    t1.ID = ID_des_ersten_anderen_sensors
                        AND        t1.timestamp = t0.timestamp )
    OR        EXISTS (    SELECT    1
                        FROM    tabelle t2
                        WHERE    t2.ID = ID_des_zweiten_anderen_sensors
                        AND        t2.timestamp = t0.timestamp )
    OR        EXISTS (    SELECT    1
                        FROM    tabelle t3
                        WHERE    t3.ID = ID_des_dritten_anderen_sensors
                        AND        t3.timestamp = t0.timestamp ) )
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden