Aller au contenu

[Regle]Requete SQL imbriqué


Sujets conseillés

Posté (modifié)

Salut !!!

j'aissaye de faire une requete imbriqué.

J'ai une table dans laquel j'ai des commentaires.

Je souhaite recuperer l'id_expediteur de la personne ayant envoyé le plus de commentaire mais ne contenant aucun 1 et aucun "vote" et que l'id_exptediteur se trouve moin de 2 fois dans la table des bannis

j'ai essayé ca mais ca ne fonctionne pas :(

SELECT message, id_expediteur, count(id_expediteur) as nb_com FROM `commentaire` WHERE message NOT like '%1%' AND message NOT like '%vote%' AND date_envois >= 1138748400
AND date_envois <= 1141081200 AND id_expediteur = (SELECT id_banni as id_expediteur, count(id_banni) as nb FROM `banni` WHERE 1 GROUP BY id_banni) AND nb < 2 GROUP BY id_expediteur ORDER BY nb_com DESC LIMIT 10

Modifié par rat-du-net
Posté

Heu, et en clair, quelle est l'erreur affichée ?

Tu as d'autres précisions à nous donner ?

xpatval

Posté

l'erreur est :

#1241 - Operand should contain 1 column(s)

en fait, c'est des que je rajoute le count(id_banni) as nb

il veut pas qu'il y ai plus d'une colonne dans la deuxieme requete

Posté

en fait, c'est ici alors qu'il faut que je selectionne seulement les membre qui sont moin de deux fois dans la table :

SELECT id_banni as id_expediteur, count(id_banni) as nb FROM `banni` WHERE 1 GROUP BY id_banni

seulement un SELECT id_banni as id_expediteur, count(id_banni) as nb FROM `banni` WHERE nb < 2 GROUP BY id_banni

ne marche pas

Posté

a ben voila !!

SELECT message, id_expediteur, count(id_expediteur) as nb_com FROM `commentaire` WHERE message NOT like '%1%' AND message NOT like '%vote%' AND date_envois >= 1138748400
AND date_envois <= 1141081200 AND id_expediteur IN (SELECT id_banni FROM `banni` GROUP BY id_banni HAVING count(id_banni) < 2) GROUP BY id_expediteur ORDER BY nb_com DESC LIMIT 10

ca a l'air d'etre bien mieux !!!

je ne connaissais pas le HAVING count(id_banni) < 2 ca va bien e simplifier la vie !!!

a chaque fois je passais par une requete intermediaire !!!

merci beaucoup !

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...