CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[vba et sql ] problème de sous requète

citron_ds3
citron_ds3
Niveau 4
28 mai 2011 à 16:40:33

Bonjour à toutes et à tous, j'écris actuellement un code en vba tout va bien sauf une partie où je galère avec une requête sql :

mysql1 = "SELECT * FROM ETUDIANT WHERE code_GROUPE = ( SELECT id_GROUPE FROM GROUPE WHERE code_GROUPE = " etcommercial CStr_(groupe) etcommercial ") ORDER BY semestre_ETU AND nom_ETU ;"

Sauf que cela ne retourne rien :(

groupe est une variable vba contenant une chaîne de caractère et CStr_() est une fonction qui permet d'éviter que groupe contienne null au lieux d'une chaîne. Si vous avez des question n'hésitez pas car là je suis un peu perdu :/

Merci par avance !

Aldebran
Aldebran
Niveau 10
28 mai 2011 à 17:51:25

Essaye plutôt de formuler ta requête avec une jointure plutôt qu'une sous-requête. Par ailleurs, ta sous-requête dans le WHERE te retourne des id_GROUPE, est-ce normal que tu cherches à comparer des code_GROUPE avec des id_GROUPE ?

citron_ds3
citron_ds3
Niveau 4
28 mai 2011 à 18:21:42

ah j'avais pas vu ça Oo je regarde ça de suite merci

citron_ds3
citron_ds3
Niveau 4
28 mai 2011 à 18:26:34

Oui petite erreur de ma part mais ça ne résout rien au problème je vais essayer avec une jointure !

citron_ds3
citron_ds3
Niveau 4
28 mai 2011 à 19:39:56

Normalement même avec une sous requête ça devrais marcher non ? parce que là j'ai :

mysql1 = "SELECT * FROM ETUDIANT WHERE groupe_ETU = ( SELECT id_GROUPE FROM GROUPE WHERE code_GROUPE = " etcommercial CStr_(groupe) etcommercial ") ORDER BY semestre_ETU AND nom_ETU ;"

avec debug.print ça me donne :

SELECT * FROM ETUDIANT WHERE groupe_ETU = ( SELECT id_GROUPE FROM GROUPE WHERE code_GROUPE = A2) ORDER BY semestre_ETU AND nom_ETU ;

citron_ds3
citron_ds3
Niveau 4
28 mai 2011 à 19:57:38

Bon j'ai trouvé, j'avais oublié un apostrophe de chaque coté de etcommercial CStr_(groupe) etcommercial "

Aldebran
Aldebran
Niveau 10
28 mai 2011 à 22:37:39

As-tu essayé avec une requête du type :
SELECT * FROM ETUDIANT INNER JOIN GROUPE ON groupe_ETU = id_GROUPE WHERE code_GROUPE = '" & CStr_(groupe) & "' ORDER BY semestre_ETU AND nom_ETU;

Une jointure c'est quand même plus propre qu'une sous-requête.

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment