Mysql, sous-requête

Résolu
Bonjour à tous,

Je voulais faire une sous-requête qui affiche une table dont la quantité de produit sont bas. J'ai fait

$query = "SELECT produit_ID, stock_ID, quantite, remarque FROM tblproduit_stock
WHERE quantite <
(SELECT niveau_réapprov FROM tblproduit where produit_ID.tblproduit_stock == produit_ID.tblproduit) ORDER BY produit_ID";

et puis le système dit qu'il y a un ligne de plus.

Quelqu'un a une idée?
Merci d'avance,
Cinderela
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. En passant, j'aurais préféré une jointure à une sous-requête. Surtout que dans la sous requête, tu inverses l'ordre table.champ, en mettant champ.table.

    Voilà ce que je mettrais à ta place :
    SELECT s.produit_ID, s.stock_ID, s.quantite, s.remarque
    FROM tblproduit_stock s
    JOIN tbl_produit p ON p.produit_ID = s.produit_ID
    WHERE s.quantite < p.niveau_réapprov
    Et je rejoins Dalida pour dire que les accents dans les noms de champs peuvent apporter quelques soucis...

    Xavier
    1
    1. Contributeur
      salut,

      "le système dit qu'il y a un ligne de plus"
      que veux-tu dire ?

      il faut peut-être limiter le nombre de lignes retournées par la deuxième requête avec un 'LIMIT'.
      "SELECT produit_ID, stock_ID, quantite, remarque FROM tblproduit_stock
      WHERE quantite <
      (SELECT niveau_réapprov FROM tblproduit WHERE produit_ID.tblproduit_stock == produit_ID.tblproduit LIMIT 1) ORDER BY produit_ID"

      et les accents dans les noms de champs c'est pas terrible…
      0
      1. Salut,

        Merci beaucoup à Dalida et Xavier. ça marche avec

        SELECT s.produit_ID, s.stock_ID, s.quantite, s.remarque
        FROM tblproduit_stock s
        JOIN tblproduit p ON p.produit_ID = s.produit_ID
        WHERE s.quantite < p.niveau_réapprov

        puis celle de Dalida, je change just le produit_ID.tblproduit == produit_ID.tblproduit_stock
        à tblproduit.produit_ID = tblproduit_stock.produit_ID

        et voilà, maintenant ça marche avec tous les deux requêtes :-)

        Bonne journée,
        Cinderela
        0