begin process at 2012 05 31 11:19:24
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Trier un tableau sur un champ fictif


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Trier un tableau sur un champ fictif

dimanche 4 avril 2010 à 22:50:19 | Trier un tableau sur un champ fictif

nitho

Bonjour à tous,
dites j'ai un problème, je veux trier un tableau suivant un champ fictif. Je m'explique, j'ai une table mysql qui contient un champ "dernière date" et un champ "périodicité". Pour l'afficher dans une page php j'utilise un tableau et dans ce tableau j'ai créé une colonne prochaine date, dont les valeurs sont fonction des valeurs des colonnes précédente. (Prochaine date = Dernière date + Périodicité)
A présent j'aimerais trier mon tableau php suivant le champ prochaine date. Comment faire? Si ce champ était dans ma table ça aurait été facile avec les requêtes SQL, mais là.... Aidez moi s'il vous plait.

Merci d'avance.



nitho l'amateur
lundi 5 avril 2010 à 10:57:05 | Re : Trier un tableau sur un champ fictif

JulSoft

Membre Club
Il est possible d'effectuer directement ton calcul dans ta requete MySQL , il y'a des fonctions toutes faires pour ça ;-)

http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-add
lundi 5 avril 2010 à 14:26:00 | Re : Trier un tableau sur un champ fictif

nitho


En fait je vais simplifier ma question: Est-il possible d'écrire:

SELECT *, date_add(derniere_date, periodicite) as bijoux
FROM matable
ORDER BY bijoux

en sachant que date_add est une fonction php et que derniere_date et periodicite sont des champs de matable

Merci pour vos contributions.


nitho l'amateur
lundi 5 avril 2010 à 14:28:38 | Re : Trier un tableau sur un champ fictif

JulSoft

Membre Club
Non, tu ne peux pas mélanger tel quel. Par contre, Mysql te permet de réaliser le calcul grâce à DATE_ADD (qui elle est une fonction MySQL). Après pour pouvoir être plus complet, il me faudrait le format de tes chamos derniere_date et periodicite
lundi 5 avril 2010 à 14:52:06 | Re : Trier un tableau sur un champ fictif

nitho

derniere_date est au format datetime
periodicite est au format varchar j'y mais des date_interval (ex P5D)

En fait j'ai choisit ces natures de champs pour pouvoir utiliser la fonction date_add de php, si tu pense qu'il faut changer la nature de mes champs dit le moi stp. et pour les fonctions mysql je ne les connais pas trop donc s'il y a des spécificités dit moi comment faire stp.

Merci d'avance
nitho l'amateur
lundi 5 avril 2010 à 15:02:33 | Re : Trier un tableau sur un champ fictif

JulSoft

Membre Club
C'est pour ça que je t'ai passé la page de manuel de MySQL ;-)

en repartant de l'exemple (dans le manuel):

SELECT DATE_ADD('1900-01-01 00:00:00', INTERVAL '-1 10' DAY);

je pense qu'n peut l'adapter comme ça:

SELECT DATE_ADD(derniere_date,INTERVAL intervale DAY);
avec ton champs 'intervale' contenant le nombre de jours à ajoutter.

Tu trouveras dans le manuel les nombreux formats possibles pour rajoutter des jours/heures etc.


mardi 6 avril 2010 à 14:40:08 | Re : Trier un tableau sur un champ fictif

nitho

Quelqu'un pourrait me dire pourquoi cette requête ne marche pas?


Code :
SELECT Code_equipement, date_add(Derniere_date, Periode) as Rien
FROM preventives



erreur 1064
dans le champ Derniere_date est du type date et le champ periode du type varchar avec des valeurs telles que 'INTERVAL 5 DAY'



nitho l'amateur
mercredi 7 avril 2010 à 11:42:22 | Re : Trier un tableau sur un champ fictif

JulSoft

Membre Club
Visiblement ce n'est pas possible de tout stocker dans ta table. INTERVAL et DAY (ou toute autre unité) étant des mots clés, tu ne peux pas les stocker avec la valeur dans la table.

Pas terrible niveau flexibilité du coup, quoi que tu peux utiliser des unités plus flexibles, comme DAY_SECOND par exemple.

Là encore, la doc est pas trop mal faite.


Cette discussion est classée dans : date, tableau, champ, trier, fictif


Répondre à ce message

Sujets en rapport avec ce message

Tableau php trier par date [ par olerien ] Hi,J'ai un petit souci de prog : je souhaite afficher ma BDD dans un tableau php en triant par date (la plus récente entrée en haut du tableau).J'ai 2 Trier par date et heure [ par lolo80000 ] Bonjour à tous,Voila j'ai une base de donnnées avec un champ "date" et un champ"heure" et je voudrai trier ma requete par date puis par heures.MerciLo Date et Heure automatique !! [ par lolo80000 ] Bonjour à tous,Voila j'ai une base de données MySQL avec un champ date, un champ heure, et un champ consommation et j'aimerai sur le principe de l'aut trier avec sort() [ par brezoneg ] Je recherche à trier des numéro de semaine par ordre alpha croissant. Je fais :connction base .....$date = mysql_result($result,0,"$r[0]");if($date[0] Selection MySQL [ par BEAUBRIUS ] BonjourJe ne sais pas trop si je doit le metre dans sql ou dans php donc je le met ici, mais desole si je me suis trompe d'endroit.J'ai dans ma varaib Trier un tableau indexé [ par kitiop ] Bonjour à tous,J'ai une chaîne composée de plusieurs mots que je transforme en un tableau avec : $mots=explode(" ",$mots);j'affiche Convertir TimeStamp en date dans un tableau excel [ par dreaman ] Convertir TimeStamp en date dans un tableau excel basic verifier si un champ a été modifié [ par 3xodius55 ] Bonjour a tous! j'ai un petit problème tout bidon mais pourtant je cale dessus.... dans un premier formulaire, j'ai une zone de texte qui contient Probleme de décrémentation de dates !! Comment faire ??? [ par fredericmaill ] Salut !!!!!j"aurais une question :comment effectuer une decrementation de date a partir d'une date de depart ?je m'esplique, j'ai un tableau  qui comp format de date adns phpadmin [ par CyberMen30 ] Bonjour!J'aimerais avoir un champ date de format jour/mois/année 00-00-0000Est-ce que je peux mettre comme type de ce champ INT et entrer les valeurs


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,312 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales