Oui, c'est parfaitement équivalent à :
mais en syntaxe ANSI (avec JOIN pour déclarer la jointure plutôt que dans la clause WHERE).
En fait non, ce n'est pas équivalent car ton LEFT JOIN signifie une jointure externe à gauche ce qui, dans ce cas est inutile : un INNER JOIN sera plus performant (pour en savoir plus sur les jointures externe : http://www.laltruiste.com/document.php?u...terne.html ).
Là on a équivalence entre ta syntaxe ANSI et celle qui inclut la jointure dans le WHERE -- fréquemment utilisée par les fainéants de mon espèce dans le cas de jointures internes mais non recommandée. :-) ).
De plus, je te conseille un COUNT(inventaire.id_item) plutôt qu'un count(*) : c'est plus performant puisque le serveur de base de données ne ramène qu'une seule colonne pour compter les enregsitrement plutôt que toutes les colonnes pour un résultat identique.
pour conclure, tu devrais plutôt écrire :
Citation :SELECT count(i.id_item) from inventaire i, item o where i.pseudo_id = $pseudo AND i.port = 1 AND i.id_item = o.id_item AND i.categorie = $categorie
mais en syntaxe ANSI (avec JOIN pour déclarer la jointure plutôt que dans la clause WHERE).
En fait non, ce n'est pas équivalent car ton LEFT JOIN signifie une jointure externe à gauche ce qui, dans ce cas est inutile : un INNER JOIN sera plus performant (pour en savoir plus sur les jointures externe : http://www.laltruiste.com/document.php?u...terne.html ).
Là on a équivalence entre ta syntaxe ANSI et celle qui inclut la jointure dans le WHERE -- fréquemment utilisée par les fainéants de mon espèce dans le cas de jointures internes mais non recommandée. :-) ).
De plus, je te conseille un COUNT(inventaire.id_item) plutôt qu'un count(*) : c'est plus performant puisque le serveur de base de données ne ramène qu'une seule colonne pour compter les enregsitrement plutôt que toutes les colonnes pour un résultat identique.
pour conclure, tu devrais plutôt écrire :
Code PHP :
<?php
$retour = mysql_query('SELECT COUNT(inventaire.id_item) AS nbre_entrees FROM inventaire INNER JOIN item on item.id_item= inventaire.id_item WHERE pseudo = "' .$_SESSION['pseudo'].'" AND categorie="'.$categorie.'" AND port="1"');