Besoin d'aide requête MySQL - SQL/NoSQL - Programmation
Marsh Posté le 23-12-2004 à 18:21:33
Tu peux le faire avec un NOT IN si ta version de mySql est récente.
Je vais supposer que ce n'est pas le cas ...
Tu peux alors le faire comme ça :
Code :
|
explication ici :
http://mysql.developpez.com/faq/?p [...] s_requetes
Marsh Posté le 24-12-2004 à 15:01:05
ca marche pas faort mais voici la requete qui me convient
SELECT UC_NOM FROM `software` Where NOT IN(SELECT UC_NOM as BOB, Caption FROM `software` Where Caption="$log" ) Group By UC_NOM
Le seul problème est que j'utilise une version 4.0 de mysql; donc ca ne marche pas.
bref comment puis-je faire cette requete
merci
Marsh Posté le 24-12-2004 à 15:21:36
Regarde le lien que je t'ai passé y a des infos sur la transformation d'un NOT IN en jointure externe. Tu devrais arriver à qqch approchant ce que j'ai mis plus haut.
Marsh Posté le 24-12-2004 à 15:37:35
Bon je viens de changer la version de mysql je suis passé en 4.1 mais ca ne marche toujours pas
il doit surement avoir une erreur de synthaxe dans ma requete
la voici
SELECT UC_NOM FROM `software` Where UC_NOM NOT IN (SELECT UC_NOM FROM `software` Where Caption="Winzip" )Group By UC_NOM
Mais ca ne marche pas
Marsh Posté le 24-12-2004 à 15:47:32
Fais plutôt :
Code :
|
Marsh Posté le 23-12-2004 à 12:11:44
Bonjour,
je bloque sur une requetes depuis plusieurs jours.
Le but de la requete est de retourner la liste des postes qui ne possède pas le logiciel $un_pa (variable selectionné dans une liste)
Ma table est composé de deux champs : le premier UC_NOM (contenant le nom du poste) et le deuxieme CAPTION (contenant le nom du logiciel)
on peux retrouver dans la table plusieurs fois la meme valeur UC_NOM mais avec des Caption différentes.
pouvez vous m'aider.
j'avais pensé à la requete suivante :
$query_s = "SELECT * FROM `software` Where Caption=\"". $un_pa ."\"";
$result_i = mysql_db_query($dbName_s, $query_s);
while ($row_a = mysql_fetch_array($result_i)) {
$subquery_s = "SELECT UC_NOM, Caption FROM `software` Where NOT (Caption=\"". $un_pa ."\" OR UC_NOM=\"". $row_a["UC_NOM"]."\" ) Group By UC_NOM";
$subresult_i = mysql_db_query($dbName_s, $subquery_s);
while ($row_b = mysql_fetch_array($subresult_i)) {
$free_s .= "<TR class=" . $class_s . ">\n" .
"<TD> " . stripslashes(htmlentities($row_b["UC_NOM"], ENT_QUOTES)) . "</TD></TR>\n";
}