82 votes

Convertir une valeur de date en chaîne de caractères

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 ?

150voto

Frank Heikens Points 29270

Utilisez DATE_FORMAT()

SELECT
  DATE_FORMAT(NOW(), '%d %m %Y') AS your_date;

71voto

Chords Points 2416

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.

5voto

PROJECT D - DSS Points 51

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.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X