J'essaie d'obtenir un champ DateTime à partir d'une date et d'un champ de temps. Aucune des fonctions de MySQL ne semble utile. p>
Est-ce que quelqu'un est conscient comment faire cela ou que si cela peut même être fait? :) p>
4 Réponses :
Il devrait être aussi simple que
UPDATE table SET datetime_field = CONCAT(date_field, " ", time_field);
@pekka a raison.
Vous pouvez également utiliser CONCAT_WS (séparateur, VAL1, VAL2, ....) P>
CONCAT_WS(' ', date_field,time_field)
Les deux autres réponses ne convertissent pas la date correctement si vous utilisez Utilisez un code> code> de "838: 00: 00" qui est un temps valide selon le MySQL manuel
Donc, vous pouvez essayer de convertir le champ TIME en secondes, puis en les ajoutant. de Ceci convertira la date en conséquence p> p>
Par exemple: p>
addtime(date_field, time_field)
Veuillez considérer les Comment puis-je écrire une bonne réponse?
Aussi, êtes-vous sûr que addtime code> est une fonction mysql définie?
Hey Hassan - Je ne vois pas pourquoi il est nécessaire d'ajouter quelque chose de plus à ma réponse - les gens veulent une solution rapide. Voici la fonction MySQL documentée: Dev.MYSQL. COM / DOC / REFMAN / 5.7 / EN / Date-and-Time-Fonctions.html
Si DATE_FIELD est le type de date, vous devez d'abord le jeter sur DateTime, car il ne fera pas de type automatique de type de date à DateTime