IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Commandes avec le nombre de lignes de commandes


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par défaut Commandes avec le nombre de lignes de commandes
    Bonjour,

    C'est un cas d'école... mais je sèche.
    J'essaye de compléter la requête suivante pour récupérer le nombre de lignes de commandes d'une commande.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT id, date FROM commande
    à partir de ces 2 tables :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    CREATE TABLE `commande` (
      `id` int(10) unsigned NOT NULL auto_increment,
      `date` datetime NOT NULL,
      PRIMARY KEY  (`id`)
    );
    CREATE TABLE `lignecommande` (
      `id` int(10) unsigned NOT NULL auto_increment,
      `produit` varchar(20) NOT NULL,
      `nombre` int(10) unsigned NOT NULL,
      `id_commande` int(10) unsigned NOT NULL,
      PRIMARY KEY  (`id`),
      FOREIGN KEY (`produit`) REFERENCES `produit` (`ref`) ON DELETE NO ACTION ON UPDATE NO ACTION,
      FOREIGN KEY (`id_commande`) REFERENCES `commande` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
    );
    Le but étant de n'exécuter qu'une seule requête... plutôt qu'une boucle horrible... optimisation, optimisation...
    J'ai essayé d'imbriquer 2 SELECT avec un COUNT et DISTINCT mais impossible...
    Pourriez-vous m'aider SVP ?

    Merci d'avance !

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Tout est dans les tutoriels.

    D'abord faire une jointure entre vos deux tables :
    http://sqlpro.developpez.com/cours/sqlaz/jointures/

    Puis faire un simple comptage :
    http://sqlpro.developpez.com/cours/sqlaz/ensembles/

    Citation Envoyé par Tchupacabra Voir le message
    plutôt qu'une boucle horrible... optimisation, optimisation..
    Vous avez parfaitement raison, mais on n'est pas dans l'optimisation, on est dans le concept le plus basique des bases de données, la jointure !

  3. #3
    Membre confirmé
    Homme Profil pro
    Data Ingenieur
    Inscrit en
    Mai 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Data Ingenieur
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2006
    Messages : 133
    Par défaut
    Bonjour,

    Je pense que vous voulez quelque chose comme ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT A.ID,date,COUNT(*) FROM COMMANDE A
    INNER JOIN LIGNECOMMANDE B ON B.ID_COMMANDE =A.ID 
    GROUP BY A.ID, date
    Compter le nom de ligne de commande pour une commande

Discussions similaires

  1. [Batch] Ligne de commande avec un chemin avec espaces
    Par Oluha dans le forum Scripts/Batch
    Réponses: 17
    Dernier message: 11/10/2018, 10h36
  2. Réponses: 3
    Dernier message: 24/02/2007, 23h07
  3. [RCP] generation du rcp en ligne de commande avec ant
    Par albeau dans le forum Eclipse Platform
    Réponses: 5
    Dernier message: 01/09/2006, 17h34
  4. compiler en ligne de commandes avec dev-cpp
    Par yashiro dans le forum Dev-C++
    Réponses: 8
    Dernier message: 30/03/2006, 19h14
  5. [DEBUTANT] Ligne de commande avec ShellExecute()
    Par alainpeniche dans le forum Windows
    Réponses: 3
    Dernier message: 22/08/2005, 11h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo