Je récupère la date et l'heure actuelles en utilisant NOW() dans mysql. Je veux convertir la valeur de la date en un varchar et la concaténer avec une autre chaîne. Comment dois-je m'y prendre ?
Réponses
Trop de publicités?Utilisez DATE_FORMAT()
SELECT
DATE_FORMAT(NOW(), '%d %m %Y') AS your_date;
C'est super vieux, mais je me suis dit que j'allais ajouter mon grain de sel. DATE_FORMAT
renvoie en effet une chaîne de caractères, mais je cherchais la fonction CAST
dans le cas où je disposais déjà d'une chaîne de date dans la base de données et que j'avais besoin d'une comparaison avec cette chaîne :
http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html
Dans ce cas, vous utiliseriez :
CAST(date_value AS char)
Cela répond à une question légèrement différente, mais le titre de la question semble suffisamment ambigu pour que cela puisse aider quelqu'un qui cherche.
Essayez ça :
concat(left(datefield,10),left(timefield,8))
-
10 caractères sur le champ de date basé sur la date complète
yyyy-MM-dd
. -
8 char sur le champ de temps basé sur le temps plein
hh:mm:ss
.
Cela dépend du format que vous voulez. Normalement, vous pouvez utiliser script ci-dessus et vous pouvez concaténer un autre champ ou une chaîne comme vous le voulez.
Parce qu'en fait, le champ de la date et de l'heure se lit comme une chaîne si vous le lisez. Mais bien sûr, vous obtiendrez une erreur lors de la mise à jour ou de l'insertion.