peut on concaténer deux variables dans une requête

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : peut on concaténer deux variables dans une requête

Re: peut on concaténer deux variables dans une requête

par Skikit » 28 mai 2010, 11:09

La réponse est dans l'erreur :
Subquery returns more than 1 row signifie que ta sous requête renvoie plusieurs lignes, la requête n'est donc pas possible.
Essaye donc de comprendre pourquoi en exécutant cette requête sur le serveur
SELECT C.LIB FROM C INNER JOIN A ON A.CODE_S=C.ID_S WHERE A.CODE=1
Si tu n'as pas accès à un PhpMyAdmin ou autre, passe par php et affiche les résultats avec un mysql_fetch_array

Re: peut on concaténer deux variables dans une requête

par melodide » 27 mai 2010, 16:59

Merci beaucoup mais sa ne fonctionne pas sa m'envoie un message d'erreur :cry:
Biensur mon adresse ip n'est pas fixe sinon se serait bête de ma part de vouloir faire comme sa

voila ma requête :
$sql='SELECT A.*,B.*,C.* FROM A INNER JOIN C ON C.ID_S=A.CODE_S  WHERE C.LIB<>(SELECT C.LIB FROM C INNER JOIN A ON A.CODE_S=C.ID_S WHERE A.CODE=1)  AND DATE_FORMAT(H.DATE_ACTION,\'%Y-%m-%d\')=\'' . $laDate . '\' AND H.CODE_LABEL=' . $leCode;
et voila l'erreur que je reçoit :

Warning: mysql_query() [function.mysql-query]: Unable to save result set in ......
1242: Subquery returns more than 1 row

???! #-o

Re: peut on concaténer deux variables dans une requête

par Skikit » 27 mai 2010, 16:33

Il a fallut que je lise plusieurs fois pour comprendre ce que tu essayes de faire...
Tu dis que C.LIB correspond à une adresse IP, donc tu as juste à ajouter "AND C.LIB <> tonAdresse"
Si j'ai bien compris tu cherches à récupérer ton adresse ip déjà présente dans les tables.
Si tu souhaites procéder de cette façon (c'est un peu bête si t'as une ip fixe...), tu peux utiliser une requête imbriquée dans la condition :
"AND C.LIB <> (select champAdresseIP from taTable where champCode=1)"

peut on concaténer deux variables dans une requête

par melodid » 27 mai 2010, 15:18

J'aimerais faire une sorte de "concaténation" dans une de mes requête mais je ne sais pas comment faire :?: :?:

voila ma requête :
$sql='SELECT A.*,B.* FROM A INNER JOIN C ON C.ID_S=A.CODE_S INNER JOIN D ON A.CODE=D.ID_D INNER JOIN B ON B.CODE=D.ID_D WHERE B.EST=1 AND DATE_FORMAT(A.DATE,\'%Y-%m-%d\')=\'' . $laDate . '\' AND A.CODE=' . $leCode;
j'aimerais y rajouter une condition du genre :
$lecode1='1'
WHERE C.LIB<>C.LIB.$lecode1
Je sais pas si je suis très clair
en gros après je fait "foreach... print" un tableau. et je veux que dans le tableau s'affiche seulement les A.CODE qui ne correspondent pas à $lecode1

Je m'explique code correspond à des codes d'utilisateurs de mon site. je voudrais que chaque jour et pour chaque code s'affiche les connexions des utilisateurs. Parfois j'utilise moi même les code des utilisateurs et je voudrais que dans mon tableau affiche seulement les connexions des utilisateurs et pas les miennes sur leur compte.

C.LIB correspond à l'adresse ip qui est enregistrée dés qu'une connexion est faite et je voudrais que l'adresse ip de connexion des utilisateurs soit différentes de mon adresse ip pour que sa s'affiche d'ou ma demande de possibilité de concaténé des variables de cette façon?!

($lecode1=1 correspond à mon code qui est égal à 1)

Je ne sais pas si j'ai été très clair j'espère que vous pourrez m'aider :roll:

Merci d'avance :wink: