Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2487 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Requête

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Requête

n°2072937
spoque
Posté le 30-04-2011 à 14:32:29  profilanswer
 

Bonjour,
 
j'essaye de récupérer par ma requête la ligne ou le nombre 53 existe dans la phrase, par un LIKE ''%53%'
 
ce qui donne:
[cpp]
$today = date('Y-m-d');  
$hier = date('Y/m/d', strtotime('-7 day'));
$query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemContentEncoded,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0  AND ItemDescription  LIKE '%53%' AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'  limit 1";
mysql_query("SET NAMES 'utf8'" );  
$result=mysql_query($query);
while ($array = mysql_fetch_array($result))
{
$title = $array['ItemTitle'];
$prix = $array['ItemDescription'];
$title = htmlspecialchars_decode($title);
$description = $array['ItemDescription'];
$description = htmlspecialchars_decode($description);
$link = $array['ItemLink'];
$usd=$array['ItemDescription'];
$city= $array['ItemSource'];
echo"...";
}
 
ceci marche très bien, ou je coince c'est que si le nomre 53 existe pas,  j'aimerais qu'il me liste le nombre 54.
 
J'ai essayé par concatener une requête avec une condition sans succès,  
 
quel chemin je dois prendre?
 
Merci pour votre aide

mood
Publicité
Posté le 30-04-2011 à 14:32:29  profilanswer
 

n°2072938
actualinet
Posté le 30-04-2011 à 14:57:40  profilanswer
 

Hello :)
 
Pas super propre, mais ça peut te donner un ordre d'idée...
 
Place le code ci-dessous entre mysql_query("SET NAMES 'utf8'" );  et $result=mysql_query($query);
 

Code :
  1. if (mysql_num_rows(mysql_query($query)) == 0) $nombre = 54;
  2. $query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemContentEncoded,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0  AND ItemDescription  LIKE '%$nombre%' AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'  limit 1";


 
Si la requete ne retourne rien (mysql_num_rows) alors il initialise la variable $nombre a 54, et la place dans ta requete:
 
...AND ItemDescription  LIKE '%$nombre%' AND...

n°2072939
spoque
Posté le 30-04-2011 à 15:08:33  profilanswer
 

Bonjour et merci pour la proposition,
 
la requête fonctionne, mais il me retourne maintenant la ligne ou ce trouve la valeur 54.
 
alors que la valeure 53 existe.
 
j'essaye d'afficher d'abors la plus petite valeur exemple le chiffre 53 et autrement 54 Etc...
 
 
 
 

actualinet a écrit :

Hello :)
 
Pas super propre, mais ça peut te donner un ordre d'idée...
 
Place le code ci-dessous entre mysql_query("SET NAMES 'utf8'" );  et $result=mysql_query($query);
 

Code :
  1. if (mysql_num_rows(mysql_query($query)) == 0) $nombre = 54;
  2. $query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemContentEncoded,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0  AND ItemDescription  LIKE '%$nombre%' AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'  limit 1";


 
Si la requete ne retourne rien (mysql_num_rows) alors il initialise la variable $nombre a 54, et la place dans ta requete:
 
...AND ItemDescription  LIKE '%$nombre%' AND...


n°2072940
actualinet
Posté le 30-04-2011 à 15:11:48  profilanswer
 

Oups... Petite erreur de ma part, ça marchera mieux ainsi:
 

Code :
  1. if (mysql_num_rows(mysql_query($query)) == 0) {
  2.   $nombre = 54;
  3.   $query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemContentEncoded,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0  AND ItemDescription  LIKE '%$nombre%' AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'  limit 1";
  4. }

n°2072941
philippe06
Posté le 30-04-2011 à 15:19:35  profilanswer
 

spoque a écrit :

Bonjour et merci pour la proposition,
 
la requête fonctionne, mais il me retourne maintenant la ligne ou ce trouve la valeur 54.
 
alors que la valeure 53 existe.
 
j'essaye d'afficher d'abors la plus petite valeur exemple le chiffre 53 et autrement 54 Etc...
 
 
 
 


 
$query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemContentEncoded,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0  AND ItemDescription  LIKE '%53%' AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'  limit 1";  
 
==>
 
$query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemContentEncoded,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0  AND ((ItemDescription  LIKE '%53%') OR  
((ItemDescription  NOT LIKE '%53%') ) AND (ItemDescription  LIKE '%54%'))) AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'  limit 1";  
 
après pour travailler plus finement il faudrait que tu nous disent ce qu'il y a dans ItemDescription.


---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2072942
spoque
Posté le 30-04-2011 à 15:24:31  profilanswer
 

Je rencontre encore un petit problème,
 
la requête ci-dessous fonctionne mais si j'ai la valeur 53 qui n'existe pas mais que la valeur  153 existe il me l'affiche alors qu'il y a 54 avant!
 
Je dois jouer avec les NOT LIKE?
 
 
ont dirait que ceci fonctionne merci pour la piste!!
 
 
$query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemContentEncoded,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0  AND ((ItemDescription  LIKE '%53%') OR  
(ItemDescription  LIKE '%54%') ) AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'  limit 1";  
 
 
 
 
 
 
 
 
 
 
 
 
 
Bonjour,
 
dans ItemDescription c'est une phrase qui provient d'un flux:
 
3.0 star hotel from USD 53 for 1 night(s), Stay 1 nights and save 10% off your stay!
 
autre enregistrement:
 
3.0 star hotel from USD 54 for 1 night(s), Stay 1 nights and save 10% off your stay!
 

philippe06 a écrit :


 
$query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemContentEncoded,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0  AND ItemDescription  LIKE '%53%' AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'  limit 1";  
 
==>
 
$query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemContentEncoded,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0  AND ((ItemDescription  LIKE '%53%') OR  
((ItemDescription  NOT LIKE '%53%') ) AND (ItemDescription  LIKE '%54%'))) AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'  limit 1";  
 
après pour travailler plus finement il faudrait que tu nous disent ce qu'il y a dans ItemDescription.


Message édité par spoque le 30-04-2011 à 15:52:23
n°2072944
philippe06
Posté le 30-04-2011 à 15:57:07  profilanswer
 

Donc du coup si tu as "3.0 star hotel from USD 51 for 1 night(s), Stay 1 nights and save 10% off your stay!", tu rates la moins chère. Et tu peux pas utiliser un "ORDER BY" parce que si tu as une chambre à 9$, tu auras "3.0 star hotel from USD 9 for 1 night(s), Stay 1 nights and save 10% off your stay!" qui est haut dans l'ordre alphanumérique. En fait idéalement, il faudrait trier par rapport à un nombre à l'intérieur d'une chaine. A ma connaissance ca n'est pas possible en SQL.


---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2072946
spoque
Posté le 30-04-2011 à 16:02:45  profilanswer
 

ok je test ont dirait que ceci fonctionne cette fois.
 
bon ma requete va être très longue car le prix est entre 30 et 150 environ
 
$query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemContentEncoded,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0  AND ((ItemDescription  LIKE '%53%') OR  
(ItemDescription  LIKE '%54%') AND (ItemDescription  NOT LIKE '%54%') OR (ItemDescription  LIKE '%55%') OR (ItemDescription  LIKE '%56%')) AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'  limit 1";  
 
 
 

philippe06 a écrit :

Donc du coup si tu as "3.0 star hotel from USD 51 for 1 night(s), Stay 1 nights and save 10% off your stay!", tu rates la moins chère. Et tu peux pas utiliser un "ORDER BY" parce que si tu as une chambre à 9$, tu auras "3.0 star hotel from USD 9 for 1 night(s), Stay 1 nights and save 10% off your stay!" qui est haut dans l'ordre alphanumérique. En fait idéalement, il faudrait trier par rapport à un nombre à l'intérieur d'une chaine. A ma connaissance ca n'est pas possible en SQL.


n°2072957
spoque
Posté le 30-04-2011 à 17:12:35  profilanswer
 

Bon effectivement c'est pas possible!!
 
j'essaye avec une nouvelle requête cette fois c'est pas mal mais...    
 
comment récupérer la valeur la plus petite, et d'en faire ma condition?
 

Code :
  1. $today = date('Y-m-d');
  2. $query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'";
  3. mysql_query("SET NAMES 'utf8'" );
  4. $result=mysql_query($query);
  5. while ($array = mysql_fetch_array($result))
  6. {
  7. $usd=$array['ItemDescription'];
  8. // je récupère les valeurs
  9. if (strlen($usd)>4)
  10. {
  11. $usd=substr($usd,23,4).'';
  12. }
  13. // je fait ma condition           
  14. if ($usd==54)
  15. {
  16. echo"...";
  17. }
  18. }


 
 
 

spoque a écrit :

ok je test ont dirait que ceci fonctionne cette fois.
 
bon ma requete va être très longue car le prix est entre 30 et 150 environ
 
$query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemContentEncoded,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0  AND ((ItemDescription  LIKE '%53%') OR  
(ItemDescription  LIKE '%54%') AND (ItemDescription  NOT LIKE '%54%') OR (ItemDescription  LIKE '%55%') OR (ItemDescription  LIKE '%56%')) AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'  limit 1";  
 
 
 


Message édité par spoque le 30-04-2011 à 17:26:22
n°2072961
philippe06
Posté le 30-04-2011 à 18:30:26  profilanswer
 

en rajoutant entre ligne 4 et 5:
$minimum=1000; $ligne_minimum=array();
 
puis entre ligne 14 et 15:
if (intval($usd) < $minimum)
{
  $minimum=intval($usd);
  $ligne_minimum=$array;
}
 
puis ligne 21:
dans minimum tu as soit la valeur minimum, soit 1000. Dans ligne minimum tu as un tableau vide ou la ligne qui correpond à la ligne la moins cher.


---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
mood
Publicité
Posté le 30-04-2011 à 18:30:26  profilanswer
 

n°2072962
spoque
Posté le 30-04-2011 à 18:41:34  profilanswer
 


Merci philippe je vais tester ce soir
 
Salutation
 
 

philippe06 a écrit :

en rajoutant entre ligne 4 et 5:
$minimum=1000; $ligne_minimum=array();
 
puis entre ligne 14 et 15:
if (intval($usd) < $minimum)
{
  $minimum=intval($usd);
  $ligne_minimum=$array;
}
 
puis ligne 21:
dans minimum tu as soit la valeur minimum, soit 1000. Dans ligne minimum tu as un tableau vide ou la ligne qui correpond à la ligne la moins cher.


n°2072969
spoque
Posté le 30-04-2011 à 20:49:01  profilanswer
 


Bonsoir Philippe,
 
Je n ai pas compris a partir de la ligne 21
 
Je fait une condition avec la variable $minimum?
 
 

philippe06 a écrit :

en rajoutant entre ligne 4 et 5:
$minimum=1000; $ligne_minimum=array();
 
puis entre ligne 14 et 15:
if (intval($usd) < $minimum)
{
  $minimum=intval($usd);
  $ligne_minimum=$array;
}
 
puis ligne 21:
dans minimum tu as soit la valeur minimum, soit 1000. Dans ligne minimum tu as un tableau vide ou la ligne qui correpond à la ligne la moins cher.


n°2072976
philippe06
Posté le 30-04-2011 à 23:43:44  profilanswer
 

oui si minimum est différent de 1000 ligne_minimum contient la ligne avec une chambre de prix minimum.


---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2073004
spoque
Posté le 01-05-2011 à 12:43:38  profilanswer
 

Bonjour Philippe,
 
 
donc  
}
 
if ($minimum!=1000){
echo $ligne_minimum;
 
 
}
 
mais $ligne_minimum ne me retourne rien
 
 
 

philippe06 a écrit :

oui si minimum est différent de 1000 ligne_minimum contient la ligne avec une chambre de prix minimum.


n°2073006
philippe06
Posté le 01-05-2011 à 12:56:12  profilanswer
 

ligne_minimum est un tableau associatif, pas une chaine de  caractère, il faut faire un var_dump / var_export. Le mieux est de faire un copier coller du nouveau code complet ici.


---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2073011
spoque
Posté le 01-05-2011 à 13:20:18  profilanswer
 


Mon code au complet,
 
malheureusement, je n'ai jamais fait de tableau associatif
 
 

Code :
  1. $today = date('Y-m-d');
  2. $query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'";
  3. mysql_query("SET NAMES 'utf8'" );
  4. $result=mysql_query($query);
  5. $minimum=1000;
  6. $ligne_minimum=array();
  7. while ($array = mysql_fetch_array($result)){
  8. $title = $array['ItemTitle'];
  9. $prix = $array['ItemDescription'];
  10. $title = htmlspecialchars_decode($title);
  11. $description = $array['ItemDescription'];
  12. $description = htmlspecialchars_decode($description);
  13. $link = $array['ItemLink'];
  14. $usd=$array['ItemDescription'];
  15. $city= $array['ItemSource'];
  16. if (strlen($usd)>4){
  17.             $usd=substr($usd,23,4).'';
  18.             }
  19.          
  20. if (intval($usd) < $minimum)
  21. {
  22.   $minimum=intval($usd);
  23.   $ligne_minimum=$array;
  24. }
  25. if ($usd==11)
  26. {
  27. echo"<table border='0' cellpadding='0' cellspacing='0'><tr>";
  28. echo"<td bgcolor='$classe' style='padding-left:5px;' width='85'>";
  29. echo"<a href=\"".$array['ItemLink']."\" ".$titre."' title=\"$title\">";
  30. echo"Hotel 3 stars";
  31. echo"</a></td>";
  32. echo"<td align='center' width='65' style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; color: #000000; background-color: $classe; text-decoration: none;'><img src=3star.gif' border='0' width='60' height='10'></td>";
  33. echo"<td width='5'></td>";     
  34. echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='20'>";
  35.             if (strlen($usd)>4){
  36.             $usd=substr($usd,23,4).'';
  37.             }
  38.             echo"$usd";
  39.             echo"</td>";
  40.         echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='50'>";
  41.             echo"USD";
  42.             echo"</td>";
  43.         echo"</tr></table >";
  44. }
  45. }


 
 
 
 

philippe06 a écrit :

ligne_minimum est un tableau associatif, pas une chaine de  caractère, il faut faire un var_dump / var_export. Le mieux est de faire un copier coller du nouveau code complet ici.


n°2073052
philippe06
Posté le 01-05-2011 à 17:22:01  profilanswer
 

Code :
  1. $today = date('Y-m-d');
  2. $query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'";
  3. mysql_query("SET NAMES 'utf8'" );
  4. $result=mysql_query($query);
  5. $minimum=1000;
  6. $ligne_minimum=array();
  7. while ($array = mysql_fetch_array($result)){
  8.   $title = $array['ItemTitle'];
  9.   $prix = $array['ItemDescription'];
  10.   $title = htmlspecialchars_decode($title);
  11.   $description = $array['ItemDescription'];
  12.   $description = htmlspecialchars_decode($description);
  13.   $link = $array['ItemLink'];
  14.   $usd=$array['ItemDescription'];
  15.   $city= $array['ItemSource'];
  16.   if (strlen($usd)>4){
  17.     $usd=substr($usd,23,4).'';
  18.    }
  19.          
  20.   if (intval($usd) < $minimum)
  21.   {
  22.     $minimum=intval($usd);
  23.     $ligne_minimum=$array;
  24.   }
  25. }
  26. if ($minimum != 1000)
  27. {
  28.   echo"<table border='0' cellpadding='0' cellspacing='0'><tr>";
  29.   echo"<td bgcolor='$classe' style='padding-left:5px;' width='85'>";
  30.   echo"<a href=\"".$array['ItemLink']."\" ".$titre."' title=\"$title\">";
  31.   echo"Hotel 3 stars";
  32.   echo"</a></td>";
  33.   echo"<td align='center' width='65' style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; color: #000000; background-color: $classe; text-decoration: none;'><img src=3star.gif' border='0' width='60' height='10'></td>";
  34.   echo"<td width='5'></td>";     
  35.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='20'>";
  36.   echo $minimum;
  37.   echo"</td>";
  38.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='50'>";
  39.   echo"USD";
  40.   echo"</td>";
  41.   echo"</tr></table >";
  42. }
  43. else
  44. {
  45.   echo "pas de minimum trouvé, liste vide!";
  46. }


Message cité 1 fois
Message édité par philippe06 le 01-05-2011 à 17:24:16

---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2073084
spoque
Posté le 01-05-2011 à 19:44:54  profilanswer
 

j'ai essayé mais ma ligne retournée  prix le plus bas est juste, seulement le nom de l'hôtel est le premier enregistrement de ma base.
 
et cette hôtel à tous un autre prix.
 
 
 

Code :
  1. $today = date('Y-m-d');
  2. $query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'";
  3. mysql_query("SET NAMES 'utf8'" );
  4. $result=mysql_query($query);
  5. $minimum=1000;
  6. $ligne_minimum=array();
  7. while ($ligne_minimum = mysql_fetch_array($result)){
  8. $title = $ligne_minimum['ItemTitle'];
  9. $prix = $ligne_minimum['ItemDescription'];
  10. $title = htmlspecialchars_decode($title);
  11. $description = $ligne_minimum['ItemDescription'];
  12. $description = htmlspecialchars_decode($description);
  13. $link = $ligne_minimum['ItemLink'];
  14. $usd=$ligne_minimum['ItemDescription'];
  15. $city= $ligne_minimum['ItemSource'];
  16. if (strlen($usd)>4){
  17.             $usd=substr($usd,23,4).'';
  18.             }
  19.          
  20. if (intval($usd) < $minimum)
  21. {
  22.   $minimum=intval($usd);
  23.   $ligne_minimum=$array;
  24. }
  25. }
  26. if ($minimum != 1000)
  27. {
  28. echo"<table border='0' cellpadding='0' cellspacing='0'><tr>";
  29. echo"<td bgcolor='$classe' style='padding-left:5px;' width='85'>";
  30. echo"<a href=\"".$array['ItemLink']."\" ".$titre."' title=\"$title\">";
  31. echo"Hotel 3 stars";
  32. echo"</a></td>";
  33. echo"<td align='center' width='65' style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; color: #000000; background-color: $classe; text-decoration: none;'><img src='http://www.world-booking.com/images/3star.gif' border='0' width='60' height='10'></td>";
  34. echo"<td width='5'></td>";     
  35. echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='20'>";
  36.             if (strlen($usd)>4){
  37.             $usd=substr($usd,23,4).'';
  38.             }
  39. echo"$minimum";
  40. echo"</td>";
  41. echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='50'>";
  42. echo"USD";
  43. echo"</td>";
  44. echo"</tr></table >";
  45. }
  46. else
  47. {
  48.   echo "pas de minimum trouvé, liste vide!";
  49. }


Merci Philippe oui sa marche, mais la boucle fini à la ligne 29
 
donc je n'ai plus le retour des mes variables comme $link = $array['ItemLink'];
 
 
 

philippe06 a écrit :

Code :
  1. $today = date('Y-m-d');
  2. $query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'";
  3. mysql_query("SET NAMES 'utf8'" );
  4. $result=mysql_query($query);
  5. $minimum=1000;
  6. $ligne_minimum=array();
  7. while ($array = mysql_fetch_array($result)){
  8.   $title = $array['ItemTitle'];
  9.   $prix = $array['ItemDescription'];
  10.   $title = htmlspecialchars_decode($title);
  11.   $description = $array['ItemDescription'];
  12.   $description = htmlspecialchars_decode($description);
  13.   $link = $array['ItemLink'];
  14.   $usd=$array['ItemDescription'];
  15.   $city= $array['ItemSource'];
  16.   if (strlen($usd)>4){
  17.     $usd=substr($usd,23,4).'';
  18.    }
  19.          
  20.   if (intval($usd) < $minimum)
  21.   {
  22.     $minimum=intval($usd);
  23.     $ligne_minimum=$array;
  24.   }
  25. }
  26. if ($minimum != 1000)
  27. {
  28.   echo"<table border='0' cellpadding='0' cellspacing='0'><tr>";
  29.   echo"<td bgcolor='$classe' style='padding-left:5px;' width='85'>";
  30.   echo"<a href=\"".$array['ItemLink']."\" ".$titre."' title=\"$title\">";
  31.   echo"Hotel 3 stars";
  32.   echo"</a></td>";
  33.   echo"<td align='center' width='65' style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; color: #000000; background-color: $classe; text-decoration: none;'><img src=3star.gif' border='0' width='60' height='10'></td>";
  34.   echo"<td width='5'></td>";     
  35.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='20'>";
  36.   echo $minimum;
  37.   echo"</td>";
  38.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='50'>";
  39.   echo"USD";
  40.   echo"</td>";
  41.   echo"</tr></table >";
  42. }
  43. else
  44. {
  45.   echo "pas de minimum trouvé, liste vide!";
  46. }




Message édité par spoque le 01-05-2011 à 20:13:20
n°2073085
philippe06
Posté le 01-05-2011 à 19:55:19  profilanswer
 

dans ce cas remplace $array['ItemLink'] par $ligne_minimum['ItemLink']


---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2073090
spoque
Posté le 01-05-2011 à 20:16:13  profilanswer
 

j'ai essayé mais ma ligne retournée  prix le plus bas est juste, seulement le nom de l'hôtel est le premier enregistrement de ma base.
   
et cette hôtel à tous un autre prix
 
je ne comprend plus rien.
 

philippe06 a écrit :

dans ce cas remplace $array['ItemLink'] par $ligne_minimum['ItemLink']


n°2073092
philippe06
Posté le 01-05-2011 à 20:47:52  profilanswer
 

erreur d'edit

Message cité 2 fois
Message édité par philippe06 le 03-05-2011 à 19:31:25

---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2073096
spoque
Posté le 01-05-2011 à 21:17:21  profilanswer
 

Milles merci Philippe ça fonctionne!!!
 
je suis très content merci pour ton aide!
 
 

philippe06 a écrit :


 
c'est dans l'affichage uniquement qu'il faut remplacer array par ligne_minimum
 
 

Code :
  1. $today = date('Y-m-d');
  2. $query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'";
  3. mysql_query("SET NAMES 'utf8'" );
  4. $result=mysql_query($query);
  5. $minimum=1000;
  6. $ligne_minimum=array();
  7. while ($array = mysql_fetch_array($result)){
  8.   $title = $array['ItemTitle'];
  9.   $prix = $array['ItemDescription'];
  10.   $title = htmlspecialchars_decode($title);
  11.   $description = $array['ItemDescription'];
  12.   $description = htmlspecialchars_decode($description);
  13.   $link = $array['ItemLink'];
  14.   $usd=$array['ItemDescription'];
  15.   $city= $array['ItemSource'];
  16.   if (strlen($usd)>4){
  17.     $usd=substr($usd,23,4).'';
  18.    }
  19.          
  20.   if (intval($usd) < $minimum)
  21.   {
  22.     $minimum=intval($usd);
  23.     $ligne_minimum=$array;
  24.   }
  25. }
  26. if ($minimum != 1000)
  27. {
  28.   echo"<table border='0' cellpadding='0' cellspacing='0'><tr>";
  29.   echo"<td bgcolor='$classe' style='padding-left:5px;' width='85'>";
  30.   echo"<a href=\"".$ligne_minimum['ItemLink']."\" ".$titre."' title=\"$title\">";
  31.   echo"Hotel 3 stars";
  32.   echo"</a></td>";
  33.   echo"<td align='center' width='65' style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; color: #000000; background-color: $classe; text-decoration: none;'><img src=3star.gif' border='0' width='60' height='10'></td>";
  34.   echo"<td width='5'></td>";     
  35.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='20'>";
  36.   echo $minimum;
  37.   echo"</td>";
  38.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='50'>";
  39.   echo"USD";
  40.   echo"</td>";
  41.   echo"</tr></table >";
  42. }
  43. else
  44. {
  45.   echo "pas de minimum trouvé, liste vide!";
  46. }




n°2073600
spoque
Posté le 03-05-2011 à 18:49:01  profilanswer
 

Bonjour philippe,
 
j'ai encore une question,
 
tous focntionne donc maintenant le script affiche bien le valeur la plus basse,
 
mais est il possible de faire en sorte qu'il m'affiche aussi en fonction de la date la plus courante.
 
j'ai une colonne "ItemAddedTime" en format datetime.
car mon script qui insert les flux dans ma base n'efface pas les données il en rajoute uniquement.
 
donc je peut me retrouver avec un prix comme exemple une chambre à 50.- Euro alors que le dernier update est de 54.-Euro.
 
j'a essayé de faire une condition avec quelque chose comme ceci:
 
 if ((intval($usd) < $minimum) and date<=$today)
 
 
 
 
 
 

philippe06 a écrit :


 
c'est dans l'affichage uniquement qu'il faut remplacer array par ligne_minimum
 
 

Code :
  1. $today = date('Y-m-d');
  2. $query="SELECT DISTINCT itemID,ItemAddedTime,ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today'";
  3. mysql_query("SET NAMES 'utf8'" );
  4. $result=mysql_query($query);
  5. $minimum=1000;
  6. $ligne_minimum=array();
  7. while ($array = mysql_fetch_array($result)){
  8.   $title = $array['ItemTitle'];
  9.   $prix = $array['ItemDescription'];
  10.   $title = htmlspecialchars_decode($title);
  11.   $description = $array['ItemDescription'];
  12.   $description = htmlspecialchars_decode($description);
  13.   $link = $array['ItemLink'];
  14.   $usd=$array['ItemDescription'];
  15.   $city= $array['ItemSource'];
  16.   if (strlen($usd)>4){
  17.     $usd=substr($usd,23,4).'';
  18.    }
  19.          
  20.   if (intval($usd) < $minimum)
  21.   {
  22.     $minimum=intval($usd);
  23.     $ligne_minimum=$array;
  24.   }
  25. }
  26. if ($minimum != 1000)
  27. {
  28.   echo"<table border='0' cellpadding='0' cellspacing='0'><tr>";
  29.   echo"<td bgcolor='$classe' style='padding-left:5px;' width='85'>";
  30.   echo"<a href=\"".$ligne_minimum['ItemLink']."\" ".$titre."' title=\"$title\">";
  31.   echo"Hotel 3 stars";
  32.   echo"</a></td>";
  33.   echo"<td align='center' width='65' style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; color: #000000; background-color: $classe; text-decoration: none;'><img src=3star.gif' border='0' width='60' height='10'></td>";
  34.   echo"<td width='5'></td>";     
  35.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='20'>";
  36.   echo $minimum;
  37.   echo"</td>";
  38.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='50'>";
  39.   echo"USD";
  40.   echo"</td>";
  41.   echo"</tr></table >";
  42. }
  43. else
  44. {
  45.   echo "pas de minimum trouvé, liste vide!";
  46. }




n°2073611
philippe06
Posté le 03-05-2011 à 19:31:41  profilanswer
 

spoque a écrit :

Bonjour philippe,

 

j'ai encore une question,

 

tous focntionne donc maintenant le script affiche bien le valeur la plus basse,

 

mais est il possible de faire en sorte qu'il m'affiche aussi en fonction de la date la plus courante.

 

j'ai une colonne "ItemAddedTime" en format datetime.
car mon script qui insert les flux dans ma base n'efface pas les données il en rajoute uniquement.

 

donc je peut me retrouver avec un prix comme exemple une chambre à 50.- Euro alors que le dernier update est de 54.-Euro.

 

j'a essayé de faire une condition avec quelque chose comme ceci:

 

if ((intval($usd) < $minimum) and date<=$today)

   



 

Bonjour spoque, pour résoudre ton problème il ne faut tenir compte que des dernières lignes. C'est un peu comme si tu avais une table avec le salaire de chaque employé chaque mois, et que tu souhaitais connaitre le montant du dernier salaire touché par chaque employé ayant travailler pour la société.

 
Code :
  1. $today = date('Y-m-d');
  2. $query="SELECT itemID,ItemAddedTime,max(ItemAddedTime) as dernieremaj, ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today' GROUP by itemID";
  3. mysql_query("SET NAMES 'utf8'" );
  4. $result=mysql_query($query);
  5. $minimum=1000;
  6. $ligne_minimum=array();
  7. while ($array = mysql_fetch_array($result)){
  8.   $title = $array['ItemTitle'];
  9.   $prix = $array['ItemDescription'];
  10.   $title = htmlspecialchars_decode($title);
  11.   $description = $array['ItemDescription'];
  12.   $description = htmlspecialchars_decode($description);
  13.   $link = $array['ItemLink'];
  14.   $usd=$array['ItemDescription'];
  15.   $city= $array['ItemSource'];
  16.   if (strlen($usd)>4){
  17.     $usd=substr($usd,23,4).'';
  18.    }
  19.          
  20. if ((intval($usd) < $minimum)  && ($array['ItemAddedTime'] ==$array['dernieremaj']) )
  21.   {
  22.     $minimum=intval($usd);
  23.     $ligne_minimum=$array;
  24.   }
  25. }
  26. if ($minimum != 1000)
  27. {
  28.   echo"<table border='0' cellpadding='0' cellspacing='0'><tr>";
  29.   echo"<td bgcolor='$classe' style='padding-left:5px;' width='85'>";
  30.   echo"<a href=\"".$ligne_minimum['ItemLink']."\" ".$titre."' title=\"$title\">";
  31.   echo"Hotel 3 stars";
  32.   echo"</a></td>";
  33.   echo"<td align='center' width='65' style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; color: #000000; background-color: $classe; text-decoration: none;'><img src=3star.gif' border='0' width='60' height='10'></td>";
  34.   echo"<td width='5'></td>";     
  35.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='20'>";
  36.   echo $minimum;
  37.   echo"</td>";
  38.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='50'>";
  39.   echo"USD";
  40.   echo"</td>";
  41.   echo"</tr></table >";
  42. }
  43. else
  44. {
  45.   echo "pas de minimum trouvé, liste vide!";
  46. }
 

EDIT: il y a moyen de filtrer les lignes "inutiles" (=plus à jour) au niveau de la requête en faisant quelque chose du style:
select * from (SELECT itemID,ItemAddedTime,max(ItemAddedTime) as dernieremaj, ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today' GROUP by itemID) as t1 where t1.ItemAddedTime=t1.dernieremaj mais faut voir si c'est supporté par ton SGBD.

Message cité 1 fois
Message édité par philippe06 le 03-05-2011 à 19:39:27

---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2073616
spoque
Posté le 03-05-2011 à 20:38:30  profilanswer
 

Bonsoir philippe,
 
merci pour la réponse, je viens de tester avec les deux solutions mais il m'affiche toujours le prix le plus bas s'en prendre en compte la dernière mise à jour.
 
j'ai enlevé mes variables $today et $hier parceque du coup elle ne sert à rien.
 
 

Code :
  1. $query="SELECT itemID,ItemAddedTime,max(ItemAddedTime) as dernieremaj, ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime GROUP by itemID";


 
 

philippe06 a écrit :


 
Bonjour spoque, pour résoudre ton problème il ne faut tenir compte que des dernières lignes. C'est un peu comme si tu avais une table avec le salaire de chaque employé chaque mois, et que tu souhaitais connaitre le montant du dernier salaire touché par chaque employé ayant travailler pour la société.  
 

Code :
  1. $today = date('Y-m-d');
  2. $query="SELECT itemID,ItemAddedTime,max(ItemAddedTime) as dernieremaj, ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today' GROUP by itemID";
  3. mysql_query("SET NAMES 'utf8'" );
  4. $result=mysql_query($query);
  5. $minimum=1000;
  6. $ligne_minimum=array();
  7. while ($array = mysql_fetch_array($result)){
  8.   $title = $array['ItemTitle'];
  9.   $prix = $array['ItemDescription'];
  10.   $title = htmlspecialchars_decode($title);
  11.   $description = $array['ItemDescription'];
  12.   $description = htmlspecialchars_decode($description);
  13.   $link = $array['ItemLink'];
  14.   $usd=$array['ItemDescription'];
  15.   $city= $array['ItemSource'];
  16.   if (strlen($usd)>4){
  17.     $usd=substr($usd,23,4).'';
  18.    }
  19.          
  20. if ((intval($usd) < $minimum)  && ($array['ItemAddedTime'] ==$array['dernieremaj']) )
  21.   {
  22.     $minimum=intval($usd);
  23.     $ligne_minimum=$array;
  24.   }
  25. }
  26. if ($minimum != 1000)
  27. {
  28.   echo"<table border='0' cellpadding='0' cellspacing='0'><tr>";
  29.   echo"<td bgcolor='$classe' style='padding-left:5px;' width='85'>";
  30.   echo"<a href=\"".$ligne_minimum['ItemLink']."\" ".$titre."' title=\"$title\">";
  31.   echo"Hotel 3 stars";
  32.   echo"</a></td>";
  33.   echo"<td align='center' width='65' style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; color: #000000; background-color: $classe; text-decoration: none;'><img src=3star.gif' border='0' width='60' height='10'></td>";
  34.   echo"<td width='5'></td>";     
  35.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='20'>";
  36.   echo $minimum;
  37.   echo"</td>";
  38.   echo"<td style='font-family: Arial, Helvetica,sans-serif; font-size: 10pt; font-weight: normal; padding-right:5px; color: #000000; background-color: $classe; text-decoration: none; text-align : justify;' width='50'>";
  39.   echo"USD";
  40.   echo"</td>";
  41.   echo"</tr></table >";
  42. }
  43. else
  44. {
  45.   echo "pas de minimum trouvé, liste vide!";
  46. }


 
EDIT: il y a moyen de filtrer les lignes "inutiles" (=plus à jour) au niveau de la requête en faisant quelque chose du style:
select * from (SELECT itemID,ItemAddedTime,max(ItemAddedTime) as dernieremaj, ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%' AND ItemAddedTime between '$hier' AND '$today' GROUP by itemID) as t1 where t1.ItemAddedTime=t1.dernieremaj mais faut voir si c'est supporté par ton SGBD.


Message édité par spoque le 03-05-2011 à 20:56:15
n°2073621
philippe06
Posté le 03-05-2011 à 21:12:08  profilanswer
 

j'ai ptet pas compris ce que tu voulais faire alors. Comment tu fais pour distinguer les produits différents? Avec itemID?
 
Si une chambre coutaient 50$ la semaine dernière (dernière MAJ) et qu'une autre coute a été maj aujourd'hui et coute 54$, il faut bien afficher celle à 50$?


---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2073622
spoque
Posté le 03-05-2011 à 21:27:38  profilanswer
 

non j'aimerais afficher la chambre à 54$ car du coup le premier enregistrement qui étais à 50$ est obsolète il s'agit de la meme chambre.
 
je dois jouer je pense sur la colonne ItemAddedTime qui fourni un datetime
 

philippe06 a écrit :

j'ai ptet pas compris ce que tu voulais faire alors. Comment tu fais pour distinguer les produits différents? Avec itemID?
 
Si une chambre coutaient 50$ la semaine dernière (dernière MAJ) et qu'une autre coute a été maj aujourd'hui et coute 54$, il faut bien afficher celle à 50$?


Message édité par spoque le 03-05-2011 à 21:29:25
n°2073623
philippe06
Posté le 03-05-2011 à 21:34:21  profilanswer
 

dans ce cas il faut juste supprimer le 'GROUP by itemID' et normalement ca devrait afficher la chambre la moins cher parmis les dernières mis à jour.


---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2073630
spoque
Posté le 03-05-2011 à 21:58:00  profilanswer
 

Malheureusement non
 
voici ma table,
 
c'est pas une requete ou je dois lister les dates d'insertion ?
 
 
 

Code :
  1. --
  2. -- Structure de la table `feedItems`
  3. --
  4. CREATE TABLE IF NOT EXISTS `feedItems` (
  5.   `itemID` int(11) NOT NULL AUTO_INCREMENT,
  6.   `feedID` int(11) NOT NULL DEFAULT '0',
  7.   `CreatedUniqueID` varchar(250) NOT NULL DEFAULT '',
  8.   `ItemAddedTime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  9.   `ItemTitle` text NOT NULL,
  10.   `ItemDescription` mediumtext NOT NULL,
  11.   `ItemContentEncoded` mediumtext NOT NULL,
  12.   `ItemLink` varchar(250) NOT NULL DEFAULT '',
  13.     `ItemSource` varchar(250) NOT NULL DEFAULT '',
  14.   `ItemSourceUrl` varchar(250) NOT NULL DEFAULT '',
  15.  
  16.   PRIMARY KEY (`itemID`),
  17.   KEY `CreatedUniqueID` (`CreatedUniqueID`)
  18. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1135 ;


 
 

philippe06 a écrit :

dans ce cas il faut juste supprimer le 'GROUP by itemID' et normalement ca devrait afficher la chambre la moins cher parmis les dernières mis à jour.


n°2073641
philippe06
Posté le 03-05-2011 à 22:30:43  profilanswer
 

spoque a écrit :

Malheureusement non
 
voici ma table,
 
c'est pas une requete ou je dois lister les dates d'insertion ?
 
 
 

Code :
  1. --
  2. -- Structure de la table `feedItems`
  3. --
  4. CREATE TABLE IF NOT EXISTS `feedItems` (
  5.   `itemID` int(11) NOT NULL AUTO_INCREMENT,
  6.   `feedID` int(11) NOT NULL DEFAULT '0',
  7.   `CreatedUniqueID` varchar(250) NOT NULL DEFAULT '',
  8.   `ItemAddedTime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  9.   `ItemTitle` text NOT NULL,
  10.   `ItemDescription` mediumtext NOT NULL,
  11.   `ItemContentEncoded` mediumtext NOT NULL,
  12.   `ItemLink` varchar(250) NOT NULL DEFAULT '',
  13.     `ItemSource` varchar(250) NOT NULL DEFAULT '',
  14.   `ItemSourceUrl` varchar(250) NOT NULL DEFAULT '',
  15.  
  16.   PRIMARY KEY (`itemID`),
  17.   KEY `CreatedUniqueID` (`CreatedUniqueID`)
  18. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1135 ;




 
Comme tu utilises des DateTime au lieu des dates, il faut utiliser un date format pour ne pas tenir compte des heures.
 la requête devrait ressembler  à ça:
select * from  
(SELECT itemID,format(ItemAddedTime,'%Y-%m-%d') as datej,MAX(format(ItemAddedTime,'%Y-%m-%d')) as dernieremaj, ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%') as t1  
where t1.datej=t1.dernieremaj


---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2073653
spoque
Posté le 03-05-2011 à 22:54:23  profilanswer
 

elle ne me retourne plus rien,  
 
je cherche de mon côté en ce môment pour voir si j'arrive à effacer les doublons avec les dates les plus vieilles.
 
que j'insert apres mon update dans ma base.
 
 
 

philippe06 a écrit :


 
Comme tu utilises des DateTime au lieu des dates, il faut utiliser un date format pour ne pas tenir compte des heures.
 la requête devrait ressembler  à ça:
select * from  
(SELECT itemID,format(ItemAddedTime,'%Y-%m-%d') as datej,MAX(format(ItemAddedTime,'%Y-%m-%d')) as dernieremaj, ItemTitle,ItemDescription,ItemLink,ItemSource FROM feedItems WHERE ItemDescription=3.0 AND ItemSource LIKE '%fl%') as t1  
where t1.datej=t1.dernieremaj


mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Requête

 

Sujets relatifs
Petite requete selon plage de donnéesRequete selon criteres
Limite des requête imbriqué dans la clause FROMAide à l'optimisation de requête
Problème avec une requete GROUP BY[RESOLU] problème requete SQL 2008
[SQL][Resolu] requete imbriqué[php] Envoyer resultat requete plusieurs ligne par mail
Galère requete MySQL[RESOLU]Requete SQL d'indicatifs chaud patate
Plus de sujets relatifs à : Requête


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR