UNION en SQL

Eléphant du PHP | 360 Messages

11 oct. 2005, 17:23

Bonjour,
Je sais que mon topic est surement mal placé mais je ne sais pas ou le mettre.

J'ai une requete SQL que voici :

Code : Tout sélectionner

SELECT nom, m.badge FROM affectation a, utilisateur u, materiel m, type_uc tu WHERE a.badge=m.badge AND a.utilisateur=u.login AND m.type=tu.type_uc UNION SELECT nom, m.badge FROM affectation a, utilisateur u, materiel m, type_imp ti WHERE a.badge=m.badge AND a.utilisateur=u.login AND m.type=ti.type_imp LIMIT 0, 30
Qui me retourne cette erreur :

Code : Tout sélectionner

Something is wrong in your syntax près de 'UNION SELECT nom, m.badge FROM affectation a, utilisateur u, mat' à la ligne 1
sous mysql.
Or logiquement la syntaxe est bonne. Voyez vous d'ou peut venir le problème?

(- Pour info, je veux pouvoir faire une requete qui interroge une table '1' sur un champ qui est comment soit à 'a' soit à 'b' mais jamais aux deux)
(- Les 2 requetes fonctionnent très bien toutes seules)

Merci d'avance

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

11 oct. 2005, 17:35

Après avoir fait un tour sur la doc

Ja'i trouvé ça:
UNION est implémentée en MySQL 4.0.0.
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 360 Messages

11 oct. 2005, 17:40

Après avoir fait un tour sur la doc

Ja'i trouvé ça:
UNION est implémentée en MySQL 4.0.0.
Et moi étant sur Easy php 1.6 ... j'ai pas la bonne version de MySql je suppose !
Bon bah merci que meme

Mammouth du PHP | 19672 Messages

11 oct. 2005, 17:51

... j'ai pas la bonne version de MySql je suppose !
Faut pas supposer, faut vérifier: regarde dans ton phpinfo, tu le sauras tout de suite.
Au pire, tu te fais un bête script d'une ligne:
echo("<p>Version de MySQL : ". mysql_get_server_info() ."</p>\n");
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 360 Messages

12 oct. 2005, 09:17

... j'ai pas la bonne version de MySql je suppose !
Faut pas supposer, faut vérifier: regarde dans ton phpinfo, tu le sauras tout de suite.
Au pire, tu te fais un bête script d'une ligne:
echo("<p>Version de MySQL : ". mysql_get_server_info() ."</p>\n");
OK je te remercie.
Voilà ma réponse : "Version de MySQL : 3.23.49-max-nt"

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

12 oct. 2005, 09:25

Voilà ma réponse : "Version de MySQL : 3.23.49-max-nt"
Donc maintenant, tu ne suppose plus, tu es sûr ;)
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer