begin process at 2010 03 20 13:07:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

SQL

 > 

MySQL

 > 

Requêtes

 > 

probleme requete


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

probleme requete

dimanche 29 juin 2008 à 14:06:24 | probleme requete

gousalah

salut j un probleme avec cette requete elle retourn plusieur ligne mais sa marche pa



select * from etudiant where mat_etudiant=(select mat_etudiant from inscription where code_option=2 and code_groupe=2)


c quoi la  solution svp
dimanche 29 juin 2008 à 14:31:39 | Re : probleme requete

nicomilville

Membre Club
Salut,

Si tu est sous mysql, essai de faire comme ça :

SET @query = (SELECT mat_etudiant FROM inscription WHERE code_option=2 AND code_groupe=2);
SELECT * FROM etudiant WHERE mat_etudiant = @query;

a++

Si la réponse vous convient, pensez : Réponse acceptée !

dimanche 29 juin 2008 à 17:43:17 | Re : probleme requete

Farfadh

Réponse acceptée !
Sans vouloir froisser personne, je trouve les requêtes formulées très maladroites, voire carrément incorrectes :
    - une sélection dans une sélection est à utiliser en dernier recours, sinon il faut préférer les jointures
    - il est impossible d'affecter à une variable un résultat de sélection qui contient plusieurs lignes, si j'ai bon souvenir
    - de plus l'utilisation d'une variable dans la clause WHERE ralenti très fortement MySQL à ce que j'ai entendu

Voila la requête que je préconise :
SELECT  etudiant.*
    FROM  etudiant
    LEFT JOIN  inscription
    ON  etudiant.mat_etudiantincription.mat_etudiant
    WHERE  incription.code_option2AND  incription.code_groupe2

Sauf erreur de ma part, elle devrait marcher non seulement parfaitement bien, mais permettre à MySQL de bien optimiser le traitement de la sélection.
dimanche 29 juin 2008 à 17:48:34 | Re : probleme requete

nicomilville

Membre Club
ok, au moins ça a le mérite d'être clair, et moins tu es sincère...

Pour ce qui est de ma requête, j'ai lu dans un tutorial du site du zéro qu'on pouvait mettre un select dans une variable pour après l'utiliser !

a++

Si la réponse vous convient, pensez : Réponse acceptée !

dimanche 29 juin 2008 à 18:21:51 | Re : probleme requete

Farfadh

Réponse acceptée !
Oui tu peux y mettre le résultat d'une sélection mais seulement si elle renvoie une valeur unique, sauf si ça fonctionne autrement dans une version que je ne connais pas :

SET@variable= (SELECT*FROMtable)

#1241 - Operand should contain 1 column(s)

SET@variable= (SELECTidFROMtable)

#1242 - Subquery returns more than 1 row

SET@variable= (SELECTidFROMtableLIMIT1)

Votre requête SQL a été exécutée avec succès (traitement: 0.0002 sec.)

Les variables en SQL, c'est pour faire joujou, parce que ce n'est pas pratique, on ne peut pas y lire et y écrire au sein d'une même instruction, elles sont lentes, elles ne peuvent pas contenir de tableaux et donc pas de sélection de données multiples, et au final mieux vaut stocker le résultat d'une requête dans son script.


Cette discussion est classée dans : probleme, requete, from, where, etudiant


Répondre à ce message

Sujets en rapport avec ce message

probleme d'extraction de ligne d'une requete [ par foufidou ] Bonjour tout le monde,J'ai cette requete par exemple :  SELECT designation, prix, quantite, valeurFROM transactionWHERE code_c Optimisation d'une sous-requête SQL [ par Lugdunum2 ] Bonjour, Dans le cadre de l'optimisation des requêtes SQL d'un site web, je me retrouve avec une grande question dont je n'ai pas trouvé de réponse d requete de modification [ par ikramta ] bonjour tout le mande.mon probleme est que je veut modifier des valeurs dans une table qui contient 5champs.je veut que chaque foit pour un objet déja Probleme de date avec une base Paradox [ par Rycku ] Bonjour, Je travaille avec une base Paradox 7.0 en connection ODBC avec Windev Mon souci est le suivant, j'ai une requete select avec une conditio optimisation de la clause WHERE sur des champs dates [ par ThierH ] Bonjour j'ai une table SQL Server (2005) contenant plus de 50000 lignes. Dans chaque ligne, j'ai des données de type datetime, integer, ... Mon applic taille de la requete sql access [ par magirap ] Salut tt le monde, je travaille avec sql access et j'ai rencontre un probleme de la taille de la requête sql lors de la creation des formulaires à par [SS2005] probleme requete [ par sdisp ] Bonjour. Je suis un peu rouillié en SQL, j'ai donc un souci pour faire une requête qui répondrait à cette demande: J'ai une table (Sous SS2005) qui co Probleme de requete [ par 6xavier6 ] Bonjour a tousj'ai un petit probleme avec une requete SQLje vais tenter d'etre le plus clair possibleVoila ma requete actuelleSELECT     CNLITM as "Co


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales