Page 1 sur 1

Pb de sous requête

Posté : 17 févr. 2007, 17:32
par alcofribas
Bonjour à tous,

Je cherche à faire une requête avec une sous-requête, mais je reçois un message disant que la ressource mysql n'est pas valide quand je veux la traiter.

Voici cette requête:

Code : Tout sélectionner

SELECT * FROM evenements WHERE id1=(SELECT id FROM contributeurs WHERE ordreauteur<>0) AND datedebut>=2007-02-17
Quelqu'un sait ce qui cloche?

Merci d'avance

Posté : 17 févr. 2007, 18:05
par albat
  1. As-tu vérifié si ta sous-requête

    Code : Tout sélectionner

    SELECT id FROM contributeurs WHERE ordreauteur<>0
    renvoyait toujours un enregistrement et un seul ?
  2. Le format de ta date est incorrect (guillemets !!!)
  3. Enfin, le SELECT * est à proscrire (bien qu'il ne génère pas d'erreur)
Suggestion (sans sous-requête, car superflue) :

Code : Tout sélectionner

SELECT E.<champs> FROM evenements E, contributeurs C WHERE E.id1 = C.id AND C.ordreauteur<>0 AND E.datedebut>="2007-02-17"

Posté : 17 févr. 2007, 18:23
par alcofribas
Non, la sous-requête renvoie plusieurs résultats... Tu as raison, c'est idiot.
Alors, comment faire?

Posté : 17 févr. 2007, 18:40
par albat
Alors, comment faire?
Ma suggestion ne convient pas ?

Posté : 17 févr. 2007, 18:54
par alcofribas
Si, pardon. J'avais fait une erreur de frappe. Ca marche. Merci beaucoup!