SQL select date

Résolu
Nike7414 Messages postés 24 Statut Membre -  
vordano Messages postés 1981 Statut Membre -
Bonjour,

Je voudrais selectionner plusieurs dates de la semaine de ma bdd à partir d'une seule date. Par exemple:
SELECT * FROM depenses WHERE WEEK(coldate) = '2012-03-17'

Comme sur cette exemple je veux tout selectionner de la semaine du 17 mars uniquement.

Enfait dans mon code j'ai:
SELECT * FROM depenses WHERE WEEK(coldate) = $getdate ORDER BY coldate DESC

$getdate = $_GET['coldate']; <-- je cherche la semaine de cette date

Merci pour votre aide

1 réponse

  1. vordano Messages postés 1981 Statut Membre 316
     
    cadeau
    </code>
    $num_jour=date('w',$getdate)-1;
    $a=split("-",$getdate);
    $l=date('Y-m-d',mktime(0,0,0,$a[1],$a[2]- $num_jour,$a[0]));
    $d = date('Y-m-d',mktime(0,0,0,$a[1],$a[2]- $num_jour+6,$a[0]));
    $sql="SELECT * FROM depenses WHERE coldate between '".$l."' and '".$d."';";
    </code>

    dis moi si ça marche ;)
    0
    1. Nike7414 Messages postés 24 Statut Membre
       
      Enfait jai trouvé plus simple :P
      $req = $bdd->prepare('SELECT * FROM depenses WHERE id_users=:id_users AND WEEK(coldate) = WEEK(\''.$getdate.'\') ORDER BY coldate DESC');



      C'était aussi un problem de guillemets -.-
      0
    2. vordano Messages postés 1981 Statut Membre 316
       
      *soupir*
      je ne savais pas qu'il y avais une méthode WEEK en sql :/
      mais a quoi sert le id_users=:id_users alors que tu ne travail que sur une seule table ?
      0
    3. Nike7414 Messages postés 24 Statut Membre
       
      Oui jai trouvé ca dans la doc MySQL! :D
      id_users, car jai une table users aussi ;)
      0
    4. vordano Messages postés 1981 Statut Membre 316
       
      et bien tu n'as pas mis ta table dans le from ;)
      0