Wir versuchen, die Länge einer körperlichen Übung zu erhalten, indem Sie die Zeitstempel auf unseren Sensordaten verwenden.MySQL Die Rückkehr einer Subtraktion
Aktuell haben wir die folgende Abfrage:
SELECT UNIX_TIMESTAMP(
SELECT HAAS2.trainingsdata.timestamp
FROM HAAS2.trainingdata
WHERE HAAS2.trainingsdata.training_id= 1
ORDER BY timestamp DESC LIMIT 1)
- UNIX_TIMESTAMP(
SELECT HAAS2.trainingsdata.timestamp
FROM HAAS2.trainingdata
WHERE HAAS2.trainingsdata.training_id= 1
ORDER BY timestamp ASC LIMIT 1)
AS output
(tritt zur besseren Lesbarkeit hinzugefügt)
Bei der Prüfung dieser Abfrage in phpMyAdmin wir die folgende Fehlermeldung erhalten:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT HAAS2.trainingsdata.timestamp FROM HAAS2.trainingdata WHERE HAAS2.trainin' at line 1
Wir haben verschiedene Möglichkeiten ausprobiert, um die Abfrage aufzuschreiben, was zu dem gleichen Fehler führt. Wir verstehen nicht, wo der Syntaxfehler liegt.
Obwohl Sie in der Tat besser dran sind mit einer anderen Abfrage * (die Antwort unten) *, gibt es eine direkte Antwort auf Ihre ausdrückliche Frage; Die Unterabfragen müssen in ihren eigenen Klammern stehen. 'SELECT UNIX_TIMESTAMP (()) - UNIX_TIMESTAMP (()) AS-Ausgabe Die Klammern, die Sie hatten, waren nur für den Funktionsaufruf' UNIX_TIMESTAMP() ', Sie brauchten auch die um die Unterabfrage. –
MatBailie