Pourquoi TIMESTAMPDIFF renvoie-t-il toujours null ?
P粉795311321
P粉795311321 2023-09-11 23:45:20
0
1
684

Je souhaite informer les utilisateurs que le serveur est en maintenance et leur indiquer le temps restant jusqu'à ce que la maintenance soit terminée. Cependant, j'ai des problèmes avec la requête MySQL.

Voici la requête que j'utilise :

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'

Malheureusement, la requête renvoie toujours null.

La structure du tableau et les données sont ci-dessous pour votre référence.

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
CLÉ_ VALEUR_ {"END_DATE":"2021-01-0723:46:53"}
Entretien

Pouvez-vous m'aider à comprendre ce que j'ai pu manquer ?

Merci d'avance.

P粉795311321
P粉795311321

répondre à tous(1)
P粉156983446

Résolu.

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';
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal