[SQL] Changer le format DATE [Fermé]

Signaler
Messages postés
251
Date d'inscription
jeudi 24 avril 2003
Statut
Membre
Dernière intervention
17 juillet 2012
-
 benzzz -
Salut tout le monde !!!

J'aimerai savoir s'il est possible de changer le format date sur une base de données MySQL. Le format par défaut est AAAA/MM/JJ et je souhaiterai avoir JJ/MM/AAAA.

Si cette opération est réalisable j'aimerai savoir comment procéder, sinon je sais qu'il y à toujours des moyen de contourner. Si vous les connaissé ... .

4 réponses

une manière de contourner en php:

si $date contient la date sous forme AAAA/MM/JJ

$data = explode('/',$date);
$annee = $data[0];
$mois = $data[1];
$jour = $data[2];


hector
http://www.hec.unil.ch/infocentre
2
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 63550 internautes nous ont dit merci ce mois-ci

Messages postés
251
Date d'inscription
jeudi 24 avril 2003
Statut
Membre
Dernière intervention
17 juillet 2012
52
Mais avant j'ai un petit problème, il n'entre pas dans ma boucle while (comme s'il ne trouvé pas de champ avec une date entre le moi dernier et aujourd'hui) je te montre vite fait le code :


$date_ref = date("Y-m-d");

// La requête
$requette_news = "select titre, corps, date, persistant from news where date > SUBDATE(".$date_ref.", INTERVAL 1 MONTH) ORDER BY date";
//echo $requette_news;
$resultat_requette_news = mysql_query($requette_news) or die('problème avec la requête.<BR>erreur SQL :'.mysql_error());

while($resultat_news = mysql_fetch_array($resultat_requette_news) )


Dans la BDD la date est 2004/05/05
Messages postés
251
Date d'inscription
jeudi 24 avril 2003
Statut
Membre
Dernière intervention
17 juillet 2012
52
Ca y est j'ai trouvé la solution.

Le problème venait de la date du jour qui était au format YYYY-MM-JJ Mysql n'aime pas les - i faut donc écrire ceci :

$date_ref = date("Ymd");

Et la il entre dans la boucle.

Je vai donc mettre à transformer la date pour l'affichage.
you're an idiot!
est ce qu'il existe une fonction SQL qui pourais faire la meme chose dans un ordre select
Oui tout à fait :

exemple :

SELECT
fournisseur,
CONVERT(VARCHAR, date_debut_contrat, 103) as date_debut_contrat,
FROM Contrats

avec
VARCHAR = type à la sortie
date_debut_contrat = champ de type date dans la base
103 = format de sortie jj/mm/aaaa
as date_debut_contrat = on donne un nom au champ en sortie
(remarquez ici qu'il peut être similaire à celui d'origine)


J'ai trouvé tout ça sur ce site (à la fin de la page) :

http://baptiste-wicht.developpez.com/tutoriels/microsoft/sql-server/datetime/


Au niveau des formats, je retiendrais ces 2 champs qui me semblent les plus utilisés pour un informaticien :

103 format jj/mm/aaaa
112 format aaaammjj

sachant que celui encodé d'origine dans la BDD est aaaa-mm-jj