Heim > Fragen und Antworten > Hauptteil
Ich möchte Benutzer darüber informieren, dass der Server gewartet wird, und ihnen die verbleibende Zeit bis zum Abschluss der Wartung mitteilen. Allerdings habe ich Probleme mit der MySQL-Abfrage.
Dies ist die Abfrage, die ich verwende:
SELECT TIMESTAMPDIFF(SECOND, NOW(), STR_TO_DATE(JSON_EXTRACT(VALUE_, '$.END_DATE'), '%Y-%m-%d %H:%i:%s')) AS SECONDS_LEFT FROM SETTINGS WHERE KEY_ = 'MAINTENANCE'
Leider gibt die Abfrage immer null zurück.
Die Tabellenstruktur und Daten finden Sie unten als Referenz.
CREATE TABLE `settings` ( `KEY_` char(50) COLLATE utf8_unicode_ci NOT NULL, `VALUE_` json NOT NULL, UNIQUE KEY `KEY_` (`KEY_`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
Wartung |
Können Sie mir helfen herauszufinden, was ich möglicherweise übersehen habe?
Vielen Dank im Voraus.
P粉1569834462023-09-12 21:13:06
已解决。
SELECT TIMESTAMPDIFF(SECOND, NOW(), STR_TO_DATE(JSON_UNQUOTE(JSON_EXTRACT(VALUE_, '$.END_DATE')), '%Y-%m-%d %H:%i:%s')) AS SECONDS_LEFT FROM SETTINGS WHERE KEY_ = 'MAINTENANCE';