Bonjour à tous,
Je suis vraiment bloqué sur la requête $sql que voici:
Code :
- $data = array();
- $xml = simplexml_load_string('<?xml version="1.0" encoding="utf-8"?><xml></xml>');
- // données de la table
- $sql = "
- SELECT
- produits.id_produit,
- MAX(produits_vente.date_) as last_vente,
- produits.libelle
- FROM
- produits
- INNER JOIN produits_gamme ON produits.id_produits_gamme = produits_gamme.id_produits_gamme
- INNER JOIN produits_type ON produits.id_produits_type = produits_type.id_produits_type
- LEFT JOIN produits_vente ON produits.id_produit = produits_vente.id_produit
- WHERE YEAR(produits_vente.date_) = '2013'
- GROUP BY produits.id_produit
- ";
-
- $data = array();
- $qry = mysql_query($sql);
- // ici on reconstruit les données de la table
- while($row = mysql_fetch_assoc($qry)) {
- $data[] = "
- <tr>
- <td class='alignc'>".$row['id_produit']."</td>
- <td class='alignr'>".$row['libelle']."</td>
- <td class='alignc'>".$row['last_vente']."</td>
- </tr> ";
- }
-
- $xml->addChild('table', implode("\n", $data));
- header('content-type: text/xml');
- echo $xml->asXML();
|
Voici la table "produits_vente":
id_produits_vente date_ id_produit
1 2014-04-03 1
2 2013-08-05 3
3 2012-09-04 2
4 2012-10-01 2
5 2013-08-06 1
Le problème est que ma requête $sql va bien rechercher les produits et dates de 2013, mais je voudrais que , pour chaque id_produit, sortent uniquement les dates de 2013, pour autant qu'il n'y ait pas de date supérieure. Or ici, pour l'id_produit 1, il y en a une en 2014. Donc seule la date du 2013-08-05 devrait sortir pour l'article 3, mais celle du 2013-08-06 sort également pour l'article 1.
Comment puis-je éviter ça?
merci d'avance!!!!!!!