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

[SQL] Probleme de nombre

ce-zaire
ce-zaire
Niveau 9
27 novembre 2013 à 16:47:15

Bonjour

J'ai une incompréhension sur une requete, pouvez-vous me guider ? :question:

Requete : Trouver le plus grand nombre de locations effectuées par un client et afficher les noms et
adresses des clients qui ont effectué ce plus grand nombre de locations.

Voila mes tables concernées :

CREATE TABLE Client(
num_c VARCHAR2(10),
nom_c VARCHAR2(30),
adresse_c VARCHAR2(50),
type_c VARCHAR2(30),
constraint Client_PK PRIMARY KEY (num_c),
constraint Ck_Client CHECK (type_c in ('Entreprise', 'Particulier'))
);

CREATE TABLE Reservation(
num_c VARCHAR2(10),
num_immat VARCHAR2(11),
date_reserv DATE,
date_remise DATE,
km_fait int,
prix int,
constraint Reservation_client_FK1 FOREIGN KEY (num_c) REFERENCES Client (num_c),
constraint Reservation_Client_FK2 FOREIGN KEY (num_immat) REFERENCES Vehicule (num_immat)
);

Et voila ma requete :

select c.nom_c, c.num_c
from Client c, reservation r
where r.num_c=c.num_c
and r.num_c in (select max(count(r.num_c)) from Client c, Reservation r
WHERE r.num_c=c.num_c
GROUP BY c.num_c)
;

J'ai un joli ORA-01722: Nombre non valide qui s'affiche je commence a tourner en rond :-(

ce-zaire
ce-zaire
Niveau 9
27 novembre 2013 à 19:06:32

RESOLU

:spoiler: :-p

select nom_c, adresse_c, cpt
from (
select c.nom_c, c.adresse_c, count(*) cpt
from Reservation r, Client c
where r.num_c = c.num_c
group by c.nom_c, c.adresse_c
)
where cpt = (select max(count(r.num_c))
from Client c, Reservation r
where c.num_c=r.num_c
group by c.nom_c)
;

Si ca peut aider certains par la suite.

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