|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Akim AMxInscription : janvier 2010 Messages : 22 ![]() |
Bonjour,
Je viens pour avoir un peut d'aide pour récupérer des champs dans ma base SQL, comprise dans la semaine en cour du lundi au dimanche. En faite j'aimerai récupérer toute les entrées PHP comprise dans la semaine courante ? mon soucis c'est que les date sont dans le format : d/m/y H:i je souhaite récupérer les événement dans la semaine en cours mais sur 2 champs sql = toute les événements dans le champ "start", et tout les événement dans le champs "stop" et les séparer dans un tableau pouvez vous m'aider a réaliser le code, car moi je cale Merci pour vos lumières Cdt, Max |
|
|
00
|
|
|
#2 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 16 861 ![]() |
Quelle est le système de base de donnée que tu utilises ? SQL Server ?
Quelque soit la réponse, il a surement des fonctions de dates pour sortir la position du jour actuel dans la semaine et ajouter/soustraire des nombres de jour à la date actuelle ; pour ainsi faire ta condition BETWEEN date_du_lundi AND date_du_dimanche |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Akim AMxInscription : janvier 2010 Messages : 22 ![]() |
Merci pour ta réponse, la base SQL server oui
Comment dire que date_du_lundi AND date_du_dimanche sont bien un lundi ou dimanche ? cdt, |
|
|
00
|
|
|
#4 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 16 861 ![]() |
Code :
SELECT DATEADD(day, - DATEPART(weekday, GETDATE()), GETDATE()) |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Akim AMxInscription : janvier 2010 Messages : 22 ![]() |
je n'arrive pas a faire marcher cette requette
Cdt |
|
|
00
|
|
|
#6 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 16 861 ![]() |
Qu'est ce que tu obtiens ?
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Akim AMxInscription : janvier 2010 Messages : 22 ![]() |
disons que je ne comprend pas trop la syntaxe a appliquer :
Code sql :
SELECT DATEADD(day, - DATEPART(weekday, GETDATE()), GETDATE()) DATEADD = nom de ma table ? DATEPART = champs date de ma base ? GETDATE = ? GETDATE = ? cdt, |
|
|
00
|
|
|
#8 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 16 861 ![]() |
Heu non je t'ai donné une requête toute prête qui donne la date du lundi.
Si ça fonctionne on pourra faire "tadate" entre "lundi" et "dimanche" |
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Akim AMxInscription : janvier 2010 Messages : 22 ![]() |
Code :
$query = "SELECT DATEADD(day, - DATEPART(weekday, GETDATE()), GETDATE())"; FUNCTION ibm.DATEADD does not exist |
|
|
00
|
|
|
#10 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 16 861 ![]() |
Tu es sûr que tu es sur un SQL Server ?
|
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Akim AMxInscription : janvier 2010 Messages : 22 ![]() |
C'est une base MySql, mais on est bien en language PHP non ? c'est dans un fichier PHP que je veux faire la requete ...
|
|
|
00
|
|
|
#12 |
![]() ![]() Développeuse PHP/Java Inscription : avril 2007 Messages : 4 335 ![]() |
La requête est appelée par un script PHP, mais la requête proprement dite dépend du SGDB.
Et si la requête peut faire le boulot, autant éviter de le faire en PHP.
__________________
Modératrice PHP Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur) Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [CODEINLINE=php][/CODEINLINE] |
|
|
00
|
|
|
#13 | ||
![]() ![]() Vincent Inscription : juillet 2005 Messages : 16 861 ![]() |
en mysql :
Code sql :
|
||
|
|
00
|
|
|
#14 |
|
Invité de passage
![]() Akim AMxInscription : janvier 2010 Messages : 22 ![]() |
merci pour vos aides c'est sympas
mais ca marche pour des dates au format d/m/y H:i ? car la requête ne me retourne rien |
|
|
00
|
|
|
#15 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 16 861 ![]() |
tes dates doivent etre dans une colonne date ou datetime sinon tu fais fausse route.
|
|
|
00
|
|
|
#16 |
|
Invité de passage
![]() Akim AMxInscription : janvier 2010 Messages : 22 ![]() |
j'ai testé en modifiant les dates en datetime et ca fonctionne
merci encore |
|
|
00
|
|
|
#17 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 16 861 ![]() |
Code sql :
UPDATE ta_table SET nouvelle_colonne = STR_TO_DATE(ancienne_colonne, '%d/%m/%Y %H:%i') |
|
|
00
|
|
|
#18 |
|
Invité de passage
![]() Akim AMxInscription : janvier 2010 Messages : 22 ![]() |
Impeccable merci encore, toute mes dates sont maintenant en datetime, tout fonctionne
et ya t'il un moyen d'afficher toute les datetime du mois en cours ? |
|
|
00
|
|
|
#19 | ||
![]() ![]() Vincent Inscription : juillet 2005 Messages : 16 861 ![]() |
Code sql :
|
||
|
|
10
|
|
|
#20 | ||
|
Invité de passage
![]() Akim AMxInscription : janvier 2010 Messages : 22 ![]() |
Merci tout fonctionne, il me reste une dernière chose a vous demander ...
est'il possible d'avoir la moyenne des temps écoulé entre les 2 dates ? les champs sont donc au format datetime, et j'aimerai les récupérer en jour - Heures, minutes j'ai trouvé cette requête mais j'ai l’impression qu'elle ne fonctionne pas correctement : Code :
|
||
|
|
00
|
Copyright © 2000-2013 - www.developpez.com